This example shows how to implement a "todo list" app. The app consists of a "todo" server and a client that sends commands to the server.
list.go
implements the "todo list" aggregateevents.go
defines and registers the "todo list" eventscommands.go
defines and registers the "todo list" commandscounter.go
implements a read model projectioncmd/server
is the server appcmd/client
is the client app
- NATS Core (Event Bus)
- MongoDB (Event Store)
Requires Docker.
make build && make default
This setup sets the TODO_DEBOUNCE
environment variable to 1s
, resulting in
a single "batch"-update of the Counter
projection.
make build && make debounce