Put the feature in a flat directory: ```text lib/features/promotions/ ├── domain/ │ ├── entities/ │ ├── failures/ │ └── repositories/ ├── data/ │ ├── models/ │ ├── datasources/ │ └── repositories/ └── presentation/ ├── bloc/ # or cubit/ ├── pages/ └── widgets/ ``` Use the layers as follows: - `domain/`: promotion entities, failures, and repository interfaces; zero external dependencies. - `data/`: DTOs/models, data sources, and repository implementations; depends only on Do...
Scanned 9/5/2026
Install to Claude Code
npx -y skills add HoangNguyen0403/agent-skills-standard --skill flutter-feature-based-clean-architecture --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Flutter Feature Based Clean Architecture?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/hoangnguyen0403-flutter-feature-based-clean-architecture-agent-skills-standard)More formats (shields.io, HTML) on the badges page.
Put the feature in a flat directory:
```text
lib/features/promotions/
├── domain/
│ ├── entities/
│ ├── failures/
│ └── repositories/
├── data/
│ ├── models/
│ ├── datasources/
│ └── repositories/
└── presentation/
├── bloc/ # or cubit/
├── pages/
└── widgets/
```
Use the layers as follows:
- `domain/`: promotion entities, failures, and repository interfaces; zero external dependencies.
- `data/`: DTOs/models, data sources, and repository implementations; depends only on Domain.
- `presentation/`: BLoC/Cubit, pages, and widgets; depends only on Domain.
Maintain the dependency rule:
```text
Presentation -> Domain <- Data
```
Put reusable cross-cutting code in `lib/shared/` or `lib/core/`. Keep `lib/features/` flat—no nested features. Cross-feature imports may use Domain types/entities, but never import another feature’s `data/` or `presentation/` layers (for example, promotions must never import loyalty’s `data/` or `presentation/` layers).
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!