gleam-lang/mix_gleam
64.1
Adequate · 18 September 2026
591
lines of production code
Elixir
primary language
1
measurement over time
What this system is
This system is a Mix integration library that enables Elixir projects to compile, manage, and test Gleam code. It provides tasks for dependency resolution, project scaffolding, and test execution, while handling the build pipeline configuration to bridge Gleam and Erlang artifacts. The tooling supports both legacy and modern Gleam build workflows, ensuring seamless interoperability within the Elixir ecosystem.
Features
New Gleam compiler task for Mix projects
Adds a new \Mix.Tasks.Compile.Gleam\ task that integrates Gleam compilation into the Mix build pipeline. This allows projects to include Gleam in their \compilers\ list, enabling automatic compilation of \.gleam\ source files to Erlang before Mix's standard compilation step. The task supports compiling the main project and specific dependencies, with options to force compilation or disable it per dependency.
lib/mix/tasks/compile · high confidence
New Mix tasks for Gleam dependency management, project scaffolding, and testing
This change introduces three new Mix tasks to the Gleam integration: \gleam.deps.get\ automatically generates \mix.exs\ files for Gleam dependencies and ensures they are fetched before compilation; \gleam.new\ provides a scaffold template for new projects (currently in a 'retro' mode); and \gleam.test\ compiles the project and runs tests via the \gleeunit\ framework. These tasks streamline the workflow for managing Gleam code within a Mix environment by handling dependency resolution, project setup, and test execution.
lib/mix/tasks/gleam · high confidence
Removals
Removal of basic\_project Erlang module
The \basic\_project\ Erlang module, which previously exported a \hello/0\ function returning the atom \world\, has been removed from the \test\_projects/basic\_project/gen\ location. This eliminates the associated test artifact and its simple greeting behavior from the project.
_test\_projects/basic\project/gen · high confidence
Behavioural changes
Refactored Mix project scaffolding and added utility modules
The library has been restructured to improve how it generates and manages Gleam projects within Elixir/Mix environments. A new \MixGleam.Config\ module now handles the rendering of \mix.exs\ files, explicitly configuring the \compilers\ list to include \:gleam\ and setting \erlc\_paths\ to support both current and legacy Gleam artifact locations. Additionally, new modules \MixGleam.Aliases\, \MixGleam.IO\, and \MixGleam.Error\ have been introduced to manage Mix alias manipulation, standardized shell output formatting, and custom exception handling, respectively.
_lib/mix\gleam · high confidence
Removal of legacy Gleam compiler task
The \Mix.Tasks.Compile.Gleam\ task has been removed. This task previously executed \gleam build .\ to compile the project. Its removal aligns with the new Gleam build CLI, which no longer accepts the legacy dot argument, effectively changing the build behavior by eliminating this specific Mix integration point.
lib/mix/tasks/compiler · high confidence
Test coverage
Added Gleam test suite and updated Elixir tests for basic project; Removed doctest for Mix.Compilers.Gleam.
Dependencies
Initial release of mix\_gleam with test project dependencies
This change introduces the mix\_gleam tool (version 0.7.0-dev) for compiling Gleam code within Elixir/Mix projects. It adds documentation dependencies (ex\_doc, earmark, makeup) to the main project and establishes a test project that integrates gleam\_stdlib (0.34.0) and gleeunit (1.0.2) as Gleam-specific dependencies, locking their versions in new mix.lock files.
(dependencies) · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 64.
Lenses
- Code Health 96
- Architecture 69
- Maturity 53
- Readiness 67
- Security 100
Changes since last survey
- 50 commits — 49 feature/other, 1 fixes
By area
- (root) — 29 commits
- lib/mix — 9 commits
- .github/workflows — 5 commits
- test_projects/basic_project — 5 commits
- (repo) — 1 commit
- lib/mix_gleam — 1 commit
Notable commits
- fix: Fix a bug where Windows fails to compile when a priv dir exists
- change: Add some badges; update CI
- change: Add stdlib
- change: Avoid warnings about function aliases/0 is unused
- change: Bump
- change: Bump CI Elixir version
- change: Bump Gleam
- change: Bump test project deps
- change: CI config
- change: Changelog!
- change: Check for symlinks in src dir, not dest
- change: Compile Gleam in Mix projects and deps
- change: Fix a typo in CHANGELOG.md
- change: Fix typo in CHANGELOG
- change: Further setup details
- change: Generate gleam.toml in the base project's _build dir
- change: Go --retro
- change: Hello, world!
- change: Licence
- change: Mention gleam.test and link example
- …and 30 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
gleam-lang/mix_gleam was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 18 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit c53e52234d1a486fd521c74c00f04ff09f326431 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-5d04157a340d.