In order to get a better grasp on Event Sourcing/CQRS, I'm writing a NodeJS implementation of the pattern.
Event Sourcing & CQRS written in TypeScript
- Add aggregate loader ✔
- register() command to register aggregates ✔
- retrieve an aggregate to call its command handler ✔
- Store events after every command is handled ✔
- Create table for an aggregate if it doesn't exist ✔
- If aggregate table exists check for schema changes and add columns if required ✔
- Publish events
- Subscribe to events (sagas)
- Replay events
- Clone repo
- Install dependencies
npm install
oryarn install
- Setup Postgres locally
docker run --name postgres -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=mysecret -p 5432:5432 -d postgres