Aqua - project scaffoldment tool

Aqua is general templating and scaffolding solution for Elixir projects, that helps:

  • make the Elixir’s development experience smoother
  • follow the best practices for project structuring
  • increase development speed

Aqua by itself tries to bring the most common and general templates and code snippets, that are widely used in development, and also allows it’s users to create there own templates and snippets.


The goal for the project is to standardize the way of creation for Elixir (let’s say Mix) projects, and reduce the number of archives, that developer should use for project generation.
Also, not only project but also common module stubs can be easily generated inside projects using Aqua

Usage example - bootstrapping Umbrella application with Ecto DB and Plug-on-Cowboy as Web interface, then add stub for UserController:

$ mix aqua new umbrella my_umbrella
$ cd my_umbrella
$ mix aqua new ecto db
$ mix aqua new plug server
$ mix aqua add plug.router Server.Controllers.UserController