Get started with Raxx/Ace.

$ mix archive.install hex raxx_kit
$ mix raxx.new my_app


  • --api: Creates a JSON API project, instead of HTML pages.

  • --ecto: Adds Ecto as a dependency and configures project to use a Postgres database. If used with --docker flag, a docker-compose service with the database will get generated.

  • --node-assets: Add JavaScript compilation as part of a generated project. Works with or without docker.

  • --docker: Create Dockerfile and docker-compose.yml in template. This allows local development to be conducted completly in docker.

  • --module: Used to name the top level module used in the generated project. Without this option the module name will be generated from path option.

  $ mix raxx.new my_app

  # Is equivalent to
  $ mix raxx.new my_app --module MyApp
  • --no-exsync: Doesn't include exsync in the generated project. Changed files won't be rebuilt on the fly when the app is running.



  • Isolated web layer with Raxx
  • HTTP/2 support with Ace server
  • Middleware for request logging and static content
  • Sessions and flash messages
  • Safe HTML templating
  • Ecto 3.0 and PostgreSQL integration
  • Controller unit tests
  • Code reloading with ExSync

Tutorial for building a distributed chatroom with Raxx.Kit