Examples of business workflows written with different Elixir patterns.
Workflow modeled: Permit Submission Tracking.
See the first blog post in the series for more information.
The usual choice of exploiting the powers of Create Read Update and Delete for great good.
Implemented with Ecto and Postgres.
Uses OTP directly to implement the runtime behaviours enforced by a vanilla Elixir Struct and Module.
Implemented with a GenServer, Dynamic Supervisor, and Elixir's Registry.
Uses the Commanded library to implement the Permit Tracking workflow with CQRS, Event-sourcing, and DDD abstractions.
Ecto and Postgres are used for a read-model projection.