Architects a Flutter application using the recommended layered approach (UI, Logic, Data). Use when structuring a new project or refactoring for scalability.
Architecting Flutter Applications Contents Architectural Layers Project Structure Workflow: Implementing a New Feature Examples Architectural Layers Enforce strict Separation of Concerns by dividing the application into distinct layers. Never mix UI rendering with business logic or data fetching. UI Layer (Presentation) Implement the MVVM (Model-View-ViewModel) pattern to manage UI state and logic. Views: Write reusable, lean widgets. Restrict logic in Views to UI-specific operations (e.g., animations, layout constraints, simple routing). Pass all required data from the ViewModel. ViewModels: Manage UI state and handle user interactions. Extend ChangeNotifier (or use Listenable) to expose state. Expose immutable state snapshots to the View. Inject Repositories into ViewModels via the constructor.
don't have the plugin yet? install it then click "run inline in claude" again.