Standards for separation of concerns, layer dependency rules, and DDD in Flutter.
45:T6e2,
Standardized separation of concerns and dependency flow using DDD principles.
lib/
├── domain/ # Pure Dart: entities, failures, repository interfaces (no code-gen required)
├── infrastructure/ # Implementation: DTOs, data sources, mappers, repo impls
├── application/ # Orchestration: BLoCs / Cubits
└── presentation/ # UI: Screens, reusable components
Presentation -> Application -> Domain <- Infrastructure. Dependencies point inward.DomainResult<T> (no exceptions crossing into UI/BLoC).Equatable when value equality is needed.get_it to inject repository implementations into BLoCs..g.dart or Data class directly in a Widget.package:flutter/material.dart in the domain layer.shared_preferences directly in a Repository; use a Data Source.For full implementation templates and DTO-to-Domain mapping examples: See references/REFERENCE.md.
feature-based-clean-architecture | bloc-state-management | dependency-injection | error-handling