Clean architecture.
Structure an application in layers, then instrument it. The dependency rule stays the same in every layout.
Source dependencies point inward.
Outer code may call inner code. Inner code never imports outer code.
An application is easier to change when the rules of the business do not import the database, the framework or the screen. Folder ownership is the only thing that changes between layouts.
Four chapters.
The running example is a notes app. A note has an identity, a title and a body — enough to show every boundary.
Where the folders become Dart.
The book applies in any language. The courses build one notes app three times, then instrument it.
Serverpod
The same notes API, built layer-first, feature-first and hybrid, then instrumented with talaria_serverpod.
Flutter
The same notes client, built hybrid, layer-first and feature-first, then instrumented with talaria_flutter.
Tutorials
Long courses, each in its own folder. Shelf is a hybrid Serverpod API and Flutter client, one file at a time.
Skills
Copy the dependency rule and the layout you picked onto a new project.
Instrument the next thing you ship.
Developer is $5 per month. Connect an agent, or open the dashboard and send the first event.