{"id":13568936,"url":"https://github.com/gleam-lang/mix_gleam","last_synced_at":"2025-04-04T22:06:59.260Z","repository":{"id":37811011,"uuid":"267856058","full_name":"gleam-lang/mix_gleam","owner":"gleam-lang","description":"⚗️ Build Gleam code with mix","archived":false,"fork":false,"pushed_at":"2024-02-12T02:18:25.000Z","size":65,"stargazers_count":184,"open_issues_count":6,"forks_count":20,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-03-28T21:08:51.874Z","etag":null,"topics":["build-tool","elixir","gleam","mix"],"latest_commit_sha":null,"homepage":"","language":"Elixir","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gleam-lang.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["lpil"],"liberapay":"gleam"}},"created_at":"2020-05-29T12:46:43.000Z","updated_at":"2025-03-15T22:07:27.000Z","dependencies_parsed_at":"2024-02-11T21:24:29.287Z","dependency_job_id":"56c910c0-d771-4c08-ad32-e1c8d2a7072a","html_url":"https://github.com/gleam-lang/mix_gleam","commit_stats":{"total_commits":40,"total_committers":9,"mean_commits":4.444444444444445,"dds":0.625,"last_synced_commit":"7bf56b857e7cb5e48bc5847c43d764aab4f8229c"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleam-lang%2Fmix_gleam","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleam-lang%2Fmix_gleam/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleam-lang%2Fmix_gleam/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gleam-lang%2Fmix_gleam/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gleam-lang","download_url":"https://codeload.github.com/gleam-lang/mix_gleam/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247256112,"owners_count":20909240,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["build-tool","elixir","gleam","mix"],"created_at":"2024-08-01T14:00:33.636Z","updated_at":"2025-04-04T22:06:59.235Z","avatar_url":"https://github.com/gleam-lang.png","language":"Elixir","funding_links":["https://github.com/sponsors/lpil","https://liberapay.com/gleam"],"categories":["Elixir"],"sub_categories":[],"readme":"# MixGleam\n\n[![Hex Package](https://img.shields.io/hexpm/v/mix_gleam?color=ffaff3\u0026label\u0026labelColor=2f2f2f\u0026logo=data:image/svg+xml;base64,PHN2ZyByb2xlPSJpbWciIHZpZXdCb3g9IjAgMCAyNCAyNCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjZmVmZWZjIiBkPSJNIDYuMjgzMiwxLjU5OTYgOS4yODMyLDYuNzk0OSBIIDE0LjcwNTEgTCAxNy43MDUxLDEuNTk5NiBaIE0gMTguMTQwNywxLjg0MzggbCAtMyw1LjE5NzMgMi43MTQ5LDQuNjk5MiBoIDYgeiBNIDUuODUzNSwxLjg1NTUgMC4xNDQ1LDExLjc0MDIgSCA2LjE0NDUgTCA4Ljg1MTYsNy4wNDg4IFogTSAwLjE0NDUsMTIuMjQwMiA1Ljg1MzUsMjIuMTI3IDguODUxNiwxNi45MzM2IDYuMTQ0NSwxMi4yNDAyIFogbSAxNy43MTEsMCAtMi43MTQ5LDQuNzAxMiAzLDUuMTk1MyA1LjcxNDksLTkuODk2NSB6IE0gOS4yODMyLDE3LjE4NzUgNi4yODUyLDIyLjM4MDkgSCAxNy43MDMyIEwgMTQuNzA1MSwxNy4xODc1IFoiLz48L3N2Zz4K)](https://hex.pm/packages/mix_gleam)\n[![Hex Docs](https://img.shields.io/badge/hex-docs-ffaff3?label\u0026labelColor=2f2f2f\u0026logo=data:image/svg+xml;base64,PHN2ZyByb2xlPSJpbWciIHZpZXdCb3g9IjAgMCAyNiAyOCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBmaWxsPSIjZmVmZWZjIiBkPSJNMjUuNjA5IDcuNDY5YzAuMzkxIDAuNTYyIDAuNSAxLjI5NyAwLjI4MSAyLjAxNmwtNC4yOTcgMTQuMTU2Yy0wLjM5MSAxLjMyOC0xLjc2NiAyLjM1OS0zLjEwOSAyLjM1OWgtMTQuNDIyYy0xLjU5NCAwLTMuMjk3LTEuMjY2LTMuODc1LTIuODkxLTAuMjUtMC43MDMtMC4yNS0xLjM5MS0wLjAzMS0xLjk4NCAwLjAzMS0wLjMxMyAwLjA5NC0wLjYyNSAwLjEwOS0xIDAuMDE2LTAuMjUtMC4xMjUtMC40NTMtMC4wOTQtMC42NDEgMC4wNjMtMC4zNzUgMC4zOTEtMC42NDEgMC42NDEtMS4wNjIgMC40NjktMC43ODEgMS0yLjA0NyAxLjE3Mi0yLjg1OSAwLjA3OC0wLjI5Ny0wLjA3OC0wLjY0MSAwLTAuOTA2IDAuMDc4LTAuMjk3IDAuMzc1LTAuNTE2IDAuNTMxLTAuNzk3IDAuNDIyLTAuNzE5IDAuOTY5LTIuMTA5IDEuMDQ3LTIuODQ0IDAuMDMxLTAuMzI4LTAuMTI1LTAuNjg4LTAuMDMxLTAuOTM4IDAuMTA5LTAuMzU5IDAuNDUzLTAuNTE2IDAuNjg4LTAuODI4IDAuMzc1LTAuNTE2IDEtMiAxLjA5NC0yLjgyOCAwLjAzMS0wLjI2Ni0wLjEyNS0wLjUzMS0wLjA3OC0wLjgxMiAwLjA2My0wLjI5NyAwLjQzOC0wLjYwOSAwLjY4OC0wLjk2OSAwLjY1Ni0wLjk2OSAwLjc4MS0zLjEwOSAyLjc2Ni0yLjU0N2wtMC4wMTYgMC4wNDdjMC4yNjYtMC4wNjMgMC41MzEtMC4xNDEgMC43OTctMC4xNDFoMTEuODkxYzAuNzM0IDAgMS4zOTEgMC4zMjggMS43ODEgMC44NzUgMC40MDYgMC41NjIgMC41IDEuMjk3IDAuMjgxIDIuMDMxbC00LjI4MSAxNC4xNTZjLTAuNzM0IDIuNDA2LTEuMTQxIDIuOTM4LTMuMTI1IDIuOTM4aC0xMy41NzhjLTAuMjAzIDAtMC40NTMgMC4wNDctMC41OTQgMC4yMzQtMC4xMjUgMC4xODctMC4xNDEgMC4zMjgtMC4wMTYgMC42NzIgMC4zMTMgMC45MDYgMS4zOTEgMS4wOTQgMi4yNSAxLjA5NGgxNC40MjJjMC41NzggMCAxLjI1LTAuMzI4IDEuNDIyLTAuODkxbDQuNjg4LTE1LjQyMmMwLjA5NC0wLjI5NyAwLjA5NC0wLjYwOSAwLjA3OC0wLjg5MSAwLjM1OSAwLjE0MSAwLjY4OCAwLjM1OSAwLjkyMiAwLjY3MnpNOC45ODQgNy41Yy0wLjA5NCAwLjI4MSAwLjA2MyAwLjUgMC4zNDQgMC41aDkuNWMwLjI2NiAwIDAuNTYyLTAuMjE5IDAuNjU2LTAuNWwwLjMyOC0xYzAuMDk0LTAuMjgxLTAuMDYzLTAuNS0wLjM0NC0wLjVoLTkuNWMtMC4yNjYgMC0wLjU2MiAwLjIxOS0wLjY1NiAwLjV6TTcuNjg4IDExLjVjLTAuMDk0IDAuMjgxIDAuMDYzIDAuNSAwLjM0NCAwLjVoOS41YzAuMjY2IDAgMC41NjItMC4yMTkgMC42NTYtMC41bDAuMzI4LTFjMC4wOTQtMC4yODEtMC4wNjMtMC41LTAuMzQ0LTAuNWgtOS41Yy0wLjI2NiAwLTAuNTYyIDAuMjE5LTAuNjU2IDAuNXoiPjwvcGF0aD48L3N2Zz4K)](https://hexdocs.pm/mix_gleam/)\n[![Licence](https://img.shields.io/hexpm/l/mix_gleam?color=ffaff3\u0026label\u0026labelColor=2f2f2f\u0026logo=data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjM0IiBoZWlnaHQ9IjI4IiB2aWV3Qm94PSIwIDAgMzQgMjgiPgo8cGF0aCBmaWxsPSIjZmVmZWZjIiBkPSJNMjcgN2wtNiAxMWgxMnpNNyA3bC02IDExaDEyek0xOS44MjggNGMtMC4yOTcgMC44NDQtMC45ODQgMS41MzEtMS44MjggMS44Mjh2MjAuMTcyaDkuNWMwLjI4MSAwIDAuNSAwLjIxOSAwLjUgMC41djFjMCAwLjI4MS0wLjIxOSAwLjUtMC41IDAuNWgtMjFjLTAuMjgxIDAtMC41LTAuMjE5LTAuNS0wLjV2LTFjMC0wLjI4MSAwLjIxOS0wLjUgMC41LTAuNWg5LjV2LTIwLjE3MmMtMC44NDQtMC4yOTctMS41MzEtMC45ODQtMS44MjgtMS44MjhoLTcuNjcyYy0wLjI4MSAwLTAuNS0wLjIxOS0wLjUtMC41di0xYzAtMC4yODEgMC4yMTktMC41IDAuNS0wLjVoNy42NzJjMC40MjItMS4xNzIgMS41MTYtMiAyLjgyOC0yczIuNDA2IDAuODI4IDIuODI4IDJoNy42NzJjMC4yODEgMCAwLjUgMC4yMTkgMC41IDAuNXYxYzAgMC4yODEtMC4yMTkgMC41LTAuNSAwLjVoLTcuNjcyek0xNyA0LjI1YzAuNjg4IDAgMS4yNS0wLjU2MiAxLjI1LTEuMjVzLTAuNTYyLTEuMjUtMS4yNS0xLjI1LTEuMjUgMC41NjItMS4yNSAxLjI1IDAuNTYyIDEuMjUgMS4yNSAxLjI1ek0zNCAxOGMwIDMuMjE5LTQuNDUzIDQuNS03IDQuNXMtNy0xLjI4MS03LTQuNXYwYzAtMC42MDkgNS40NTMtMTAuMjY2IDYuMTI1LTExLjQ4NCAwLjE3Mi0wLjMxMyAwLjUxNi0wLjUxNiAwLjg3NS0wLjUxNnMwLjcwMyAwLjIwMyAwLjg3NSAwLjUxNmMwLjY3MiAxLjIxOSA2LjEyNSAxMC44NzUgNi4xMjUgMTEuNDg0djB6TTE0IDE4YzAgMy4yMTktNC40NTMgNC41LTcgNC41cy03LTEuMjgxLTctNC41djBjMC0wLjYwOSA1LjQ1My0xMC4yNjYgNi4xMjUtMTEuNDg0IDAuMTcyLTAuMzEzIDAuNTE2LTAuNTE2IDAuODc1LTAuNTE2czAuNzAzIDAuMjAzIDAuODc1IDAuNTE2YzAuNjcyIDEuMjE5IDYuMTI1IDEwLjg3NSA2LjEyNSAxMS40ODR6Ij48L3BhdGg+Cjwvc3ZnPgo=)](https://github.com/gleam-lang/mix_gleam/blob/main/LICENCE)\n[![Build](https://img.shields.io/github/actions/workflow/status/gleam-lang/mix_gleam/ci.yml?branch=main\u0026color=ffaff3\u0026label\u0026labelColor=2f2f2f\u0026logo=github-actions\u0026logoColor=fefefc)](https://github.com/gleam-lang/mix_gleam/actions)\n\nAn Elixir archive that teaches `Mix` how to work with Gleam code and\ndependencies!\n\n## Installation\n\nInstall the Gleam compiler onto your machine.\n[Installation instructions can be found here](https://gleam.run/getting-started/installing-gleam.html).\n\nInstall or update the `MixGleam` archive from Hex:\n\n```shell\n$ mix archive.install hex mix_gleam\n```\n\nTo install or update from source:\n\n```shell\n$ mix archive.uninstall mix_gleam # if this archive was previously installed\n$ git clone https://github.com/gleam-lang/mix_gleam.git\n$ cd mix_gleam\n$ MIX_ENV=prod mix do archive.build, archive.install\n```\n\nConfigure your `Mix` project to use the `MixGleam` archive to work with Gleam's\ncompiler and Gleam dependencies:\n\n```elixir\n# in mix.exs\n# ...\n  @app :my_gleam_app\n\n  def project do\n    [\n      app: @app,\n      # ...\n      archives: [mix_gleam: \"~\u003e 0.6\"],\n      compilers: [:gleam | Mix.compilers()],\n      aliases: [\n        # Or add this to your aliases function\n        \"deps.get\": [\"deps.get\", \"gleam.deps.get\"]\n      ],\n      erlc_paths: [\n        \"build/dev/erlang/#{@app}/_gleam_artefacts\",\n        # For Gleam \u003c v0.25.0\n        \"build/dev/erlang/#{@app}/build\"\n      ],\n      erlc_include_path: \"build/dev/erlang/#{@app}/include\",\n      # For Elixir \u003e= v1.15.0\n      prune_code_paths: false,\n      # ...\n    ]\n  end\n# ...\n```\n\nTo see an entire example `mix.exs` file you can adapt to your existing `Mix`\nproject:\n\n```shell\n$ mix gleam.new --retro\n```\n\nIf you want to write Gleam code in your project, it's a good idea to add\n`gleam_stdlib` and `gleeunit` to your project's dependencies:\n\n```elixir\n# in mix.exs\n# ...\n  defp deps do\n    [\n      # ...\n      {:gleam_stdlib, \"~\u003e 0.34 or ~\u003e 1.0\"},\n      {:gleeunit, \"~\u003e 1.0\", only: [:dev, :test], runtime: false},\n      # ...\n    ]\n  end\n# ...\n```\n\nMake a `src` directory for your Gleam code to live in:\n\n```shell\n$ mkdir src\n```\n\nAnd add the `build` directory to your `.gitignore` file so Gleam's build\nartefacts are not included in your project.\n\nTo run Gleam tests from the `test/` directory with `:gleeunit`, you can run:\n\n```shell\n$ mix gleam.test\n```\n\n## Example\n\nCheck the [test project](test_projects/basic_project/) for an example that\ncontains both Elixir and Gleam code. See the\n[Elixir](test_projects/basic_project/test/basic_project_test.exs) and\n[Gleam](test_projects/basic_project/test/basic_project_test.gleam) test files to\nfind examples on calling Gleam code from Elixir, and vice-versa.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgleam-lang%2Fmix_gleam","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgleam-lang%2Fmix_gleam","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgleam-lang%2Fmix_gleam/lists"}