Skip to content

Overview

Erlang VM is a Practical functional programming for a parallel world - https://www.erlang.org - https://en.wikipedia.org/wiki/Erlang_(programming_language)

Elixir is a dynamic, functional language for building scalable and maintainable applications on the Erlang VM

Phoenix Framework: Build rich, interactive web applications quickly, with less code and fewer moving parts.

Installing

using asdf-vm

  • Install https://asdf-vm.com/
  • Install Erlang
  • Install Elixir
  • use mix ... to install project dependencies

using mise (mise-en-place)

TDB

https://github.com/jdx/mise

legacy

ps: better use asdf-vm to manage your dependencies

Note that Elixir v1.16 requires Erlang 24.0 or later.

https://elixir-lang.org/install.html

Erlang Package Manager

Hex

The package manager for the Erlang ecosystem https://hex.pm/ - Usage: https://hex.pm/docs/usage

Elixir

Phoenix

Phoenix is a web development framework written in Elixir which implements the server-side Model View Controller (MVC) pattern. Many of its components and concepts will seem familiar to those of us with experience in other web frameworks like Ruby on Rails or Python's Django.

How Phoenix works

Ecto

Ecto is another exciting feature of Phoenix which provides a language-integrated query composition database wrapper for Elixir. Essentially, it allows us to read and to write to different databases (similar to ActiveRecord for Rails).

  • https://elixirforum.com/t/trying-to-understand-a-basic-phoenix-application-and-its-mvc-model-explained-by-a-flowchart-statechart/43122

Community (Contact, Books, Screencasts/Courses)

Hosting (platform-as-a-service)

https://hexdocs.pm/phoenix/deployment.html

https://www.gigalixir.com/docs/

http://gigalixir.com/

Resources

https://www.thestackcanary.com/elixirs-secret-weapon/