View on GitHub


gut is a template printing, aka scaffolding, tool for Erlang. Like rails generate or yeoman but for Erlang

Download this project as a .zip file Download this project as a tar.gz file

gutenberg: gut is good!

Gutenberg is a massive template printing, aka scaffolding, tool for Erlang. Like rails generate or yeoman. Gutenberg was highly inspired by lfetool.


Erlang 17 or superior is needed. HOWEVER due to an SSL bug in 17.3, 17.3 is not supported. Please update to 17.3 rev2 from erlang solutions or downgrade to a previous 17 version.


Version 1 will be released this week after I get some input and comments from the community. Please test it and let me know what you think! Obviously this tool is meant for erlang newcomers or people like me that like the tools available in the nodejs, clojure, ruby and python communities.

tl;dr. install


curl -L -O
chmod +x ./gut
sudo mv ./gut /usr/local/bin/


chmod +x ./gut
sudo mv ./gut /usr/local/bin/


The generators are searched and downloaded from github (like yeoman) so that anybody can create a generator and use it with gut

> gut help
escriptize # Turn your erlang application into an escript
help       # Prints help information
implode    # Removes gut and all its associated files
new        # Creates a new project or file
search     # Search available generators
update     # Get the latest version of the gut executable and update.gens
version    # Prints gutenberg version
> gut search
Fetching list of generators from github...
NAME                  DESCRIPTION                                                                     OWNER                 STARS
ranch                 ranch project generator                                                         unbalancedparentheses     3
library               library project generator                                                       jfacorro                  2
application           application project generator                                                   jfacorro                  2
supervisor            supervisor file generator                                                       unbalancedparentheses     2
genserver             gen_server file generator                                                       unbalancedparentheses     2
cowboy-bones          An Erlang Cowboy web app Gutenberg generator with i18n, templating, and more    gmr                       2
supervised-gen-server supervised gen_server project generator                                         jfacorro                  2
cowboy-websocket      Cowboy Websocket handler                                                        igaray                    1
cowboy                cowboy project generator                                                        unbalancedparentheses     1
cowboy-crud-json      Cowboy CRUD JSON handler                                                        igaray                    1
cowboy-rest-basic     Basic Cowboy REST handler                                                       igaray                    1
cowboy-http-basic     Basic Cowboy HTTP handler                                                       igaray                    1
cowboy-rest-full      Full Cowboy REST handler                                                        igaray                    1
cowboy-lasse          cowboy sse handler generator                                                    jfacorro                  0
genfsm                gen_fsm file generator                                                          jfacorro                  0
elli                  elli project generator - web server                                             jfacorro                  0
genevent              gen_event file generator                                                        jfacorro                  0

This downloads the ranch generator and instantiates it with the provided name (the name is eventi in this case)

> gut new ranch eventi
Cloning ranch hosted at
Please submit a github issue if you find any problem with this generator

Working dir /Users/unbalancedparentheses/projects/gut/eventi
* creating .gitignore
* creating Makefile
* creating
* creating
* creating rel/sys.config
* creating src/
* creating src/eventi.erl
* creating src/eventi_protocol.erl

The generator wants to run the following list of commands:
1. make
Are you sure you want to continue: [y/n] n

Message from generator:
Run `make app shell` to launch the application.

The job is done, boss.
> tree eventi
├── Makefile
├── rel
│   └── sys.config
└── src
    ├── eventi.erl
    └── eventi_protocol.erl

2 directories, 7 files


Hipster Gutenberg