Isar Database
SkillDatabases & dataUse when configuring local persistence with Isar NoSQL database, defining schemas, or executing reactive queries in Flutter.
Use Isar Database in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Isar Database and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Isar Database skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by dhruvanbhalara/skills in skills/flutter/flutter-isar/SKILL.md and read by Ahel’s review.
- Use Isar as the primary local database for structured data persistence
- Define collections using
@collectionannotation withIdfield - Place collection definitions in the
data/local/directory of the relevant feature - Run
dart run build_runner build --delete-conflicting-outputsafter modifying collections
Schema Design
- Keep collections focused: one collection per domain entity
- Use
@Indexannotations for fields queried frequently - Use
@enumeratedfor enum fields - Use
LinksandBacklinksfor relationships between collections - NEVER store derived/computed values: compute them in the domain layer
Migrations
- Isar handles additive schema changes automatically (new fields, new collections)
- For breaking changes (renamed fields, removed fields), write migration logic in the repository
- Version your database schema and check version on app startup
Repository Pattern for Local Data
- Local DataSource wraps all Isar
put,get,delete,watchcalls - Repositories orchestrate between remote and local DataSources
- Repositories decide cache-first vs network-first strategy per use case
Offline-First Patterns
- Cache-First: Read from Isar first, fetch from network in background, update Isar on success
- Network-First: Fetch from network, fall back to Isar on failure
- Write-Behind: Write to Isar immediately, sync to server asynchronously (queue pending changes)
- Always show cached data immediately while refreshing in background
Reactive Queries
- Use Isar's
watchLazy()orwatch()to stream changes to the UI via BLoC - Wrap Isar watch streams in the repository and expose as
Stream<List<DomainModel>> - Dispose stream subscriptions properly in BLoC
close()method
Secure Storage
- Use
flutter_secure_storagefor sensitive key-value data (tokens, encryption keys) - Use
SharedPreferencesONLY for non-sensitive user preferences (theme, locale, onboarding flags) - NEVER store passwords, tokens, or secrets in
SharedPreferencesor plain Isar
Signals
- GitHub stars
- 30
- Forks
- 4
- Last commit
- Aug 2026
Advanced
- Item type
- skill
- Key
flutter-isar- Source
- github.com/dhruvanbhalara/skills
github.com/dhruvanbhalara/skills
Related picks
Skill · evanca
The pick for Dartwrite-dart
Skill · cfug
The pick for Dartflutter-auto-route-navigation
Skill · hoangnguyen0403
The pick for Fluttererror-tracking-flutter
Skill · posthog
The pick for Flutteranalytics
Skill · coreyhaines31
More in Databases & datasupabase
Skill · supabase
More in Databases & data