Is your feature request related to a problem? Please describe.
This was identified by @coderbyheart while discussing how we could implement a shipments api in the toolbox. At the moment, our database model follows a classic design where:
modifications are destructive
there is no versioning
there is little traceability
Describe the solution you'd like
Study and document the viability of turning the toolbox into an event sourced implementation. Where we natively store immutable events as our source of truth. Then we build projections where the outcome would be similar to what we currently have at the moment.
Is your feature request related to a problem? Please describe.
This was identified by @coderbyheart while discussing how we could implement a shipments api in the toolbox. At the moment, our database model follows a classic design where:
Describe the solution you'd like
Study and document the viability of turning the toolbox into an event sourced implementation. Where we natively store immutable events as our source of truth. Then we build projections where the outcome would be similar to what we currently have at the moment.
In Elixir, the best library for this purpose is https://github.com/commanded/commanded