Mix Elixir build tool
Light · Postcard
102 × 152 mm · PDF
Dark · Postcard
102 × 152 mm · PDF
Ink saver · Postcard
102 × 152 mm · PDF
Light · A4 landscape
297 × 210 mm · PDF
Dark · A4 landscape
297 × 210 mm · PDF
Ink saver · A4 landscape
297 × 210 mm · PDF
Light · A3 landscape
420 × 297 mm · PDF
Dark · A3 landscape
420 × 297 mm · PDF
Ink saver · A3 landscape
420 × 297 mm · PDF
Start here
mix new <name>
mix deps.getmix compilemix testiex -S mixmix run <file.exs>
mix formatmix helpConcepts
- mix.exs deps, aliases
- mix.lock pinned versions
- _build/<env> beams per MIX_ENV
- Release self-contained
Projects
mix new <name>
mix new <name> --sup
mix new <name> --umbrella
mix new <path> --app <app> --module
<Module>
mix phx.new <name>
Compile & run
mix compilemix compile --force
mix compile --warnings-as-errors
mix run <file.exs> [args]
mix run -e "<expr>"
mix run --no-halt
mix eval "<expr>"
iex -S mixmix cleanmix do <task> + <task>
Test
mix testmix test <file>
mix test <file>:<line>
mix test --failed
mix test --stale
mix test --only <tag>
mix test --exclude <tag>
mix test --trace
mix test --max-failures <n>
mix test --seed 0
mix test --slowest <n>
mix test --cover
mix test --repeat-until-failure <n>
Dependencies
mix deps.getmix deps.update <dep>
mix deps.update --all
mix depsmix deps.treemix deps.compile
mix deps.clean <dep>
mix deps.clean --unused --unlock
mix deps.unlock <dep>
{:plug, "~> 1.16"}{:ex_doc, "~> 0.34", only: :dev, runtime: false}{:lib, github: "<user>/<repo>", tag: "<tag>"}{:local, path: "../local"}
Format & quality
mix formatmix format --check-formatted
mix format <file>
mix format --dry-run --check-formatted
mix hex.outdated
mix hex.auditReleases
MIX_ENV=prod mix release
MIX_ENV=prod mix release <name>
mix release --overwrite
mix release.init
_build/prod/rel/<name>/bin/<name> start
bin/<name> daemon
bin/<name> remote
bin/<name> stop
Environments & tooling
MIX_ENV=<env> mix <task>
MIX_DEBUG=1 mix <task>
mix local.hexmix local.rebarmix archive.install hex <package>
mix hex.info <package>
mix hex.search <term>
mix hex.publishdefp aliases do [setup: ["deps.get", "compile"], check: ["format --check-formatted", "test"]]end
Recipes
mix deps.getmix compile --warnings-as-errorsmix test
mix format --check-formattedmix compile --warnings-as-errorsmix test --cover
mix test --failed --trace# once it passes, run all againmix test
mix deps.get --only prodMIX_ENV=prod mix release_build/prod/rel/<name>/bin/<name> start
Help
mix helpmix help <task>
mix --version



