Architecture · 2026
Flutter Architecture: Guide + Starter Project
Start your next Flutter app with the architecture already decided.
38 decisions on structure, layers, state, errors, environments, tests and CI, each with the reason behind it and when to bend it. Plus a starter project for Android and iOS, with tests and CI, built on them.
Proof, not promises
The rules come with real, tested code
Each decision has three parts: the problem, the rule and when to bend it. 27 of the 38 quote their code straight from the starter project, so the guide and the code can't disagree.
-
The problem first
A situation you'll recognise, then the rule that avoids it.
-
The rule, in real code
Quoted from the starter project you get with the guide.
-
When to bend it
The case where the rule costs more than it gives.
Structure decisions
12
Data and state decisions
14
Delivery and scale decisions
12
Tests in the starter project
30
Preview
A look inside
Real pages, not mockups.
What you get out of it
A structure decided before the app grows
Every decision made before the first feature
Folders, layers, dependency injection, navigation, errors and environments, decided and explained.
A starter project you can run today
A Flutter app for Android and iOS with in-memory data, so it runs without a backend.
Tests and CI from the first commit
30 tests on fakes across services, repositories, view models, screens and the router, and a GitHub Actions workflow.
Know when to bend each rule
Every decision ends with the case where it costs more than it gives.
Built on Flutter's own recommendations
MVVM, repositories, provider and go_router, verified with Flutter 3.47.7 and Dart 3.13.5.
Add every feature in the same order
A walkthrough that adds a feature layer by layer, two checklists and an ADR template.
Who it's for
Start where your project is
| If you're… | Read | Then |
|---|---|---|
| A developer whose apps get messy as they grow | Structure and Data and state (decisions 1 to 26) | Follow the walkthrough to add a feature |
| Starting a new app | All 38 decisions | Make the starter yours and add your first feature |
| A lead setting up a team project | Delivery and scale (decisions 27 to 38) | Write your ADRs and use the checklists |
The guide assumes you already ship Flutter apps: it doesn't explain widgets, async code or ChangeNotifier basics.
It's for you if…
- You ship Flutter apps and they get harder to change as they grow
- You're starting a new Android or iOS app and want the structure decided up front
- You lead a team and want rules everyone can read and follow
- You want real code, not just diagrams
It's not for you if…
- You've never built a Flutter app: this isn't a course from zero
- You need architecture for Flutter web or desktop: it's built for Android and iOS
- You're looking for a video course
How it works
From download to your first feature in four steps
-
Buy and download
Pay securely with Shopify. You get one zip with both PDFs, English and Spanish, and the starter project.
-
Run the starter
Open it in your editor and run it on an emulator, a simulator or your phone. No backend needed.
-
Read the decisions
Each one shows the problem, the rule, the starter's code when the rule needs code, and when to bend it.
-
Make it yours
Rename the package and the app identifiers, set your API URLs and add your first feature in the order the guide shows.
Two PDFs, A4: English edition 47 pages, Spanish edition 48 pages. Plus the starter project source: a Flutter app for Android and iOS with 30 tests and a GitHub Actions workflow. Code verified with Flutter 3.47.7 and Dart 3.13.5; you need Flutter with Dart 3.12 or later to run it.
The price
The guide, priced per decision
38 decisions, 27 of them with code quoted from a runnable starter project that has 30 tests and CI, and both PDFs in English and Spanish. One purchase.
Per architecture decision
€0,66
€24,99 ÷ 38
| Aspect | Building it on your own | With the guide |
|---|---|---|
| Folder structure | Decided again in every project | Decided once, by feature and by layer |
| Where the logic goes | Wherever it fits that day | One rule per layer, imports checked in CI |
| Errors | Exceptions that reach the screen | Typed errors in a Result |
| Tests | Added later, if ever | 30 tests on fakes from day one |
| Environments | A line you comment out | One entry point per environment |
Your next Flutter app can start with the hard decisions already made.
Instant digital delivery: no refunds for a change of mind once the download is available. Refund policy
FAQ