Open-source Dart package for CRDT-aware Drift databases, extracted from Trackself infrastructure and generalized for other Flutter/Dart applications.
About
drift_crdt is a public Dart package that adds CRDT-aware database behavior to Drift applications. It started as Trackself infrastructure and was then generalized so other Dart and Flutter developers can use it.
My role
I built the original infrastructure for Trackself, then open-sourced and shaped it into a reusable package rather than leaving it as private product code.
Technical shape
The package provides CrdtQueryExecutor integration for Drift, supports SQLite through sqflite and sqflite_common, and supports PostgreSQL through Drift's drift_postgres integration.
It includes changeset extraction, merge support, per-table CRDT inclusion and exclusion, deterministic changeset ordering, deleted-record query helpers, and MIT licensing.
drift_crdt on pub.dev