# Demo project

This is a demo project to show how to use `anywise` in practice.

we will create a simple todo app with the following features:

- Add a new todo
- Remove a todo
- Mark a todo as done
- List all todos

Along the way, we will evolve our architecture, applying advanced concepts like

- Choreography
- Orchestration
- Transtional OutBox
- Domain events
- event sourcing
- CQRS

etc.

## Getting started

1. Clone the repository
2. run `make demo` at project root
3. checkout apidocs to `localhost:8000/api/v1/docs`
