flutter-architecture
Current (2026) Flutter app architecture from the Flutter team's official guide, Very Good Ventures and LeanCode - UI layer (View + ViewModel/Cubit/Notifier) and data layer (Repository + Service), feature folders, dependency injection, Result/Command patterns, networking and JSON models, go_router, monorepos with pub workspaces, day-one project setup, scaling teams, legacy refactoring. Use this whenever creating a new Flutter project or feature, deciding folder structure, adding a repository/API/service layer, choosing packages, reviewing Flutter code for maintainability, or scaling a Flutter team - even if the user only asks "where should this file go".
Target: Mobile development. Automatically collected · unverified.
Excerpt from the author’s documentation
Extracted from a fixed version of SKILL.md in its original language. This is the author’s documentation; installation, compatibility and runtime results have not been verified by this site.
Read the original English text
Topics in the source
- Flutter architecture
- 1. The layers
- 2. Scale the structure to the project
- 3. Data, networking, persistence
- 4. App-level decisions
- 5. Day-one setup checklist (do these before feature work)
- 6. Scaling teams and legacy (LeanCode + VGV experience)
- Sources
Verified 2026-09-25 against docs.flutter.dev/app-architecture (Flutter 3.47), engineering.verygood.ventures, and pub.dev. For Dart syntax and widget code style, see the flutter-dart-style skill. For state libraries, see flutter-state-management. Core rule (Flutter team, "strongly recommend"): separate the UI layer from the data layer, keep widgets dumb, and let data flow one way. Everything else is scaled to the project's size. Service: wraps exactly one external source (REST client, DB, platform plugin, SharedPreferences). No business logic. Returns raw/API models. Repository: the source of truth for one kind of data (UserRepository, BookingRepository). It combines services, caches, retries, maps API models to domain models, and exposes Future > or Stream . No Flutter imports. Define it as an abstract class (officially "strongly recommend"), so tests use fakes and dev/staging use other implementations. ViewModel / Cubit / Notifier: one per screen or feature. Turns repository data into UI state and exposes actions (Commands/methods). No BuildContext, no widgets. View: layout, simple ifs, animation, routing. No business logic. Domain layer / use-cases: conditional. Add them only whe
This is an excerpt. Refer to the complete source and its current requirements.
- Source repository
- abugeek/flutter-skills
- Source file
- .claude/skills/flutter-architecture/SKILL.md
- Fixed revision
- 458377635834ad1cff2c4871ac0725a5ef4bcd4f
Requirements
- Only the author’s Skill metadata is included. Read the full instructions to check dependencies, licensing and conditions of use.
A small first task
先阅读原作者说明,再决定是否在自己的 AI 工具中使用。
Instructions for your AI tool
- Claude Desktop: resource-specific guide not available yet
- Claude Code: resource-specific guide not available yet
- Cursor: resource-specific guide not available yet
- Codex: resource-specific guide not available yet
Author documentation is not live verification by this site. Without evidence, we do not mark a resource as compatible, safe or free.
Sources and evidence
This record was collected automatically. Its documentation, suitability and runtime behavior have not been manually verified.
Author: abugeek/flutter-skills · original repository metadata. Documentation review: Not reviewed. Last source check: 2026-11-10T09:01:53.906Z.
Categories are inferred from names, descriptions and paths. They do not establish compatibility.
License and attribution
MIT. Third-party content and copyright remain with their authors. Refer to the original license and terms.
Original license ↗Synchronization, copying and user-reported success do not mark a resource as runtime-tested.
Limitations and notes
- Collecting metadata does not mean this site has installed, adapted, runtime-tested or security-reviewed the resource.