Isar Database
High-performance NoSQL database for Flutter/Dart — designed as a faster alternative to Hive with query support. Isar uses a custom storage engine with ACID transactions, a type-safe query API via code generation, full-text search, indexes, and reactive streams (watch collections for changes). Works on iOS, Android, macOS, Windows, Linux, and web. Much faster than sqflite for complex queries; faster than Hive for large collections. Schema defined via Dart annotations + code generation (isar_generator). Part of the Isar family that also includes isar_flutter_libs.
Score Breakdown
⚙ Agent Friendliness
🔒 Security
Local database protected by OS app sandbox on iOS/Android. Optional AES-256 encryption via isar_flutter_libs encryption parameter. No network exposure. Data at rest protection depends on OS encryption and optional Isar encryption.
⚡ Reliability
Best When
You're building a Flutter mobile/desktop app that needs a fast, type-safe local NoSQL database with reactive queries, full-text search, and complex filtering beyond key-value storage.
Avoid When
You need relational data with JOINs (use drift/sqflite), you're building web-only (experimental web support), or you need simple key-value storage (use shared_preferences or Hive).
Use Cases
- • Store agent conversation history and context locally in Flutter apps using Isar — offline-first agent experiences that sync later when connected
- • Cache agent API responses locally for offline access using Isar's type-safe collections — structured NoSQL storage faster than shared_preferences for complex objects
- • Build reactive Flutter UIs that update when agent data changes using Isar's stream-based change notification — watchLazy and watch methods for live data binding
- • Implement full-text search across locally stored agent content using Isar's string index search — faster than SQLite LIKE queries for text-heavy agent data
- • Store agent ML model outputs, embeddings, or feature vectors locally using Isar's native list support — no serialization boilerplate for typed Dart objects
Not For
- • Server-side Dart applications — Isar is optimized for mobile/desktop clients; use PostgreSQL or SQLite (via drift) for server-side persistence
- • Relational data with complex JOINs — Isar is NoSQL/document-oriented; use drift (SQLite) or sqflite for strongly relational data models with foreign key constraints
- • Web-only Flutter apps requiring IndexedDB — Isar's web support is experimental; Hive or sembast are more stable for Flutter Web
Interface
Authentication
Local database — no auth concepts. File-system level protection on mobile via app sandbox. Encryption support available via isar_flutter_libs with encryption option.
Pricing
Isar is Apache 2.0 licensed. Free for all use. Creator (Simon Leier) maintains as open source.
Agent Metadata
Known Gotchas
- ⚠ Code generation required — Isar models require @Collection annotation and `flutter pub run build_runner build` to generate .g.dart files; forgetting to regenerate after schema changes causes runtime errors
- ⚠ Schema migrations are manual — Isar doesn't auto-migrate; schema changes between app versions require version bump in Isar.open() and manual migration callbacks; no automatic ALTER TABLE equivalent
- ⚠ Isar instances must be opened before use — Isar.open() is async and must complete before any collection operations; common mistake is accessing isar before await Isar.open() completes in app startup
- ⚠ Transactions for multi-collection writes — writes to multiple collections without a transaction are not atomic; use isar.writeTxn(() async { ... }) for coordinated multi-collection writes
- ⚠ Watch/watchLazy streams don't emit initial value — stream only emits on changes after subscription; initial UI load requires explicit query + then watchLazy for subsequent changes
- ⚠ ID field must be Isar-managed or manually assigned — use @Id() annotation on an int field; Isar auto-assigns IDs starting at 1; manually assigning 0 or null creates auto-ID; conflicts possible if client generates IDs independently of Isar's counter
Alternatives
Full Evaluation Report
Detailed scoring breakdown, competitive positioning, security analysis, and improvement recommendations for Isar Database.
Scores are editorial opinions as of 2026-03-06.