User CRUD sample app to demonstrate a domain-driven architecture in Kotlin.
I created this repo for multiple reasons:
- Have a sample project that anyone can use as a starting point or as a reference
- Practice and consolidate the clean architecture concepts (and other principles stated below)
- Have an example project with standard terminology to make teaching easier
- Fun
- simple crud: create, delete, and list user with API; can't create twice
- minimalist approach (e.g. no frameworks, few libraries)
- follow ports & adapters architecture
- feature driven - web handlers and domain features are split by files
- with integration tests
- applied TDD