sqlite_crdt 3.0.1 copy "sqlite_crdt: ^3.0.1" to clipboard
sqlite_crdt: ^3.0.1 copied to clipboard

Dart implementation of Conflict-free Replicated Data Types (CRDTs) using Sqlite

Dart implementation of Conflict-free Replicated Data Types (CRDTs) using Sqlite.
This package implements sql_crdt.

Setup #

Awaiting async functions is extremely important and not doing so can result in all sorts of weird behaviour.
You can avoid them by activating the unawaited_futures linter warning in analysis_options.yaml:

linter:
  rules:
    unawaited_futures: true

This package uses sqflite. There's a bit of extra setup necessary depending on where you intend to run your code:

Android & iOS #

sqlite_crdt uses recent Sqlite features that may not be available in every system's embedded libraries.

To get around this, import the sqlite3_flutter_libs package into your project:

sqlite3_flutter_libs: ^0.5.12

Desktop, Server #

On the desktop and server, Sqflite uses the system libraries so make sure those are installed.

On Debian, Raspbian, Ubuntu, etc:

sudo apt install libsqlite3 libsqlite3-dev

On Fedora:

sudo dnf install sqlite-devel

Otherwise check the instructions on sqflite_common_ffi.

Web #

This package has experimental support for Flutter Web, thanks to sqflite_common_ffi_web.

In order to use this feature you'll need to install the Sqlite3 web binaries by running the following command from the project's root:

dart run sqflite_common_ffi_web:setup

Usage #

Check example.dart for more details.

Features and bugs #

Please file feature requests and bugs in the issue tracker.

4
likes
120
pub points
71%
popularity

Publisher

verified publishercachapa.net

Dart implementation of Conflict-free Replicated Data Types (CRDTs) using Sqlite

Repository (GitHub)
View/report issues
Contributing

Documentation

API reference

License

Apache-2.0 (LICENSE)

Dependencies

sqflite_common, sqflite_common_ffi, sqflite_common_ffi_web, sql_crdt

More

Packages that depend on sqlite_crdt