Cindel is a local database built for Flutter and Dart. Annotate your model classes and run the code generator — Cindel produces fully typed collection getters, typedDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/mainser/cindel/llms.txt
Use this file to discover all available pages before exploring further.
where() and filter() query builders, and schema serializers. Your app never touches raw documents or SQL; it just calls db.users.put(user) and db.users.filter().activeEqualTo(true).findAll().
Quickstart
Get a working Cindel database running in your Flutter app in minutes.
Installation
Add the required packages and configure your build setup.
Models & Schemas
Learn how to annotate Dart classes and run the code generator.
API Reference
Full reference for every public class, method, and annotation.
Why Cindel
Cindel combines a Rust native core with a generated Dart API so you get near-native performance and full type safety in the same package. MDBX is the default backend on mobile and desktop; SQLite Web/OPFS powers Flutter Web — and both backends speak the same generated typed API.Generated Queries
Type-safe
where() and filter() helpers generated from your model fields. No raw queries or string column names.Reactive Watchers
Subscribe to object, collection, or query changes as Dart streams. Watchers fire only after write transactions commit.
Migrations
Versioned open-time migrations with export/import helpers, schema registration, and automatic backend compaction.
MDBX Default
MDBX provides sub-millisecond reads and writes for typical Flutter workloads. Switch to SQLite with one flag.
Flutter Web
Experimental SQLite/OPFS Worker + Wasm backend. Same typed API, same generated code — no browser-specific branches.
Local-First Sync
Experimental sync with a durable internal outbox and a backend-neutral adapter contract you implement.
Get Started
Run the generator
Run
dart run build_runner build --delete-conflicting-outputs to produce typed schemas and query helpers.Cindel is pre-1.0. The public API surface is stabilizing around generated typed collections and the open-time configuration model. See the Roadmap for the current focus.