About this project
SQLite Loom is a reactive SQLite layer built on top of sqflite_common for Dart and Flutter applications. It provides a typed interface for database operations without the need for code generation, annotations, or build runners.
Key capabilities include:
- Typed Tables & Queries: Supports typed values for columns and immutable queries for composing filters, ordering, and pagination.
- Reactive Reads: Provides live streams to watch lists, counts, and existence of data, with transaction-aware invalidations.
- Safe Writes: Implements guarded writes where unfiltered updates and deletes fail unless explicitly requested via allRows().
- Explicit Migrations: Includes a migration system that can be managed via a provided CLI or programmatically at startup.
- Relationship Management: Supports explicit descriptors for one-to-one, one-to-many, and many-to-one relationships, including batched loading to prevent N+1 query patterns.
- Advanced SQLite Support: Integrates with SQLite features such as WAL mode, foreign keys, RETURNING clauses, and strict tables.
- Diagnostics: Includes a DbObserver for monitoring query durations and result counts, as well as tools for integrity checks and vacuuming.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.