For a detailed rundown of why this project exists, please ready Build Your Own Code Poster with Elixir. The general idea was to create a commits.io style poster for a client of mine.
During that processes, I decided to make an Elixir poster as well, to celebrate the language I wrote to build the tool.
Take this tool for what it is. It's a utility I hacked together to generate a one-off poster specifically for my needs. It's not a general purpose poster making tool, and may not work for your use case.
I've published this repo as a learning tool and as a supplement to this article. It is not intended to be a quality piece of standlone software.
Read below if you're still intent on giving it a spin:
This is an Elixir project. You'll need Elixir installed before running this application. Check out the Elixir Introduction for help getting up to speed. Once you've got Elixir up and running, and cloned this project locally, proceed to the following steps.
- Scale an image of your choosing to
1.667x1
and resize to approximately398px
by300px
. As an example, here’s the image I used to generate the Elixir poster. - Gather the source code you want to use in the poster into a single file.
- From the project root, start an interactive shell (
iex -S mix
) - Call the
ElixirPoster.go
function. By default, this assumes that your image is calledimage.png
, and your source file is calledcode
in the root of the project. These options can be overridden, if desired. See theElixirPoster.go
definition. - On my machine, with the given source image, it takes approximately 3 seconds to generate the final poster. The final result is an SVG saved to
out.svg
. - Open
out.svg
in Inkscape, export to PNG, print!
- Put any code you want used in a file
code
- Put the logo of your choosing in a file,
image.png
mix deps.get
iex -S mix
ElixirPoster.go