Distributing Elixir application

I would like to give Elixir a try and build a side project - a terminal application. But what is the point if you cannot share it with others?

I would like to make the released application as easy as possible to run by users. So basically download it as a binary and simply running it (without any erlang/elixir dependencies to install).

I’vw found distillery however, I’m not sure if it does what I want.

Is there a good tool/approach for such use case?

There is this great thread about the shortcomings of elixir for CLI development How suitable is Elixir for a CLI application? - #10 by derek-zhou

I was also recently considering using elixir for a CLI app but decided to try rust instead, for the reasons mentioned above

you can create a binary with bakeware for now, and eventually with lumen.

Bakeware doesn’t solve the problem of being a standalone binary with zero dependencies on the target:

Creating cross-platform binaries

Bakeware binaries include the Erlang runtime but there are still dependencies on the host system. These include the C runtime and other libraries referenced by the Erlang runtime and any NIFs and ports in your application.

1 Like