What problem does it solve?
This Skill helps Flutter developers design and implement a consistent, testable data layer that centralizes persistence, avoids direct UI access to storage, and provides offline-capable caching strategies so apps remain reliable and maintainable.
Core Features & Use Cases
- Decision-driven storage selection: Guides whether to use shared_preferences, SQLite (sqflite/drift), or non-relational stores (Hive/Isar) based on data shape and access patterns.
- Stateless service wrappers: Encapsulates direct DB and API access into stateless services to simplify testing and isolate side effects.
- Repository as single source of truth: Implements repositories that guarantee the database is open before operations, transform raw data into domain models, and coordinate sync/merge logic.
- Use Case: Build a todo app with local persistence, offline-first sync to a remote API, and a repository that presents domain models to the UI layer.
Quick Start
Configure dependencies, answer which entities need persistence, and let the skill scaffold domain models, a stateless database service, and a repository implementation.