Live Air Setup

The goal of the sharing to build the basic for a flight search booking with Elixir and Phoenix Framework.

This open source project is not for production but for educational purpose only

  • Elixir is a dynamic, functional language for building scalable and maintainable applications.

  • Phoenix Framework is a web development framework for the Elixir programming language.

  • Surface A server-side rendering component library for Phoenix Framework

  • Moon Design Moon Design System is a collection of reusable components build with Surface

  • Gigalixir is a fully-featured, production-stable platform-as-a-service built just for Elixir

  • Duffel API. Build an intuitive flight search, offer loyalty programme perks, add seats and bags, manage your orders, and more.

Install Asdf

We advise to use asdf in order to manage the versions for Erlang, Elixr, Node and Postres

Depending on your OS, you will find detailled intructions on Asdf offical documentation. Despite a mild complex setup, asdf has been saving a lot of time, effort and joy

On a parent folder create a file

.tool-versions

Add the following content, we are using the latest versions available

elixir 1.16.1
erlang 26.2.2
nodejs 21.6.1
postgres 15.4

Then run

asdf install

Install Phoenix

Install Hex and Phoenix

mix local.hex
mix archive.install hex phx_new

Create your project

We are now ready to create our Phoenix app

mix phx.new live_air

Lets save our project to github

cd live_air
git init

You can then commit and publish your branch. By default we name our branch “master”

Using Git is essential in this project, however we will not go over the command. If you are starting with Github, we recommend using Github Desktop for a start. I simplify, adding project, publishing, switching branches , commiting,etc

Download the final project

Full project on github