Awesome
PocketBase Drift
PocketBase client cached with Drift.
- Full Text Search
- Offline first
- Partial updates
- CRUD support
- SQLite storage
- All platforms supported
- Example app
- Tests
Getting Started
Replace a pocketbase client with a drift client.
- import 'package:pocketbase/pocketbase.dart';
+ import 'package:pocketbase_drift/pocketbase_drift.dart';
- final client = PocketBase(
+ final client = $PocketBase.database(
'http://127.0.0.1:8090',
);
Web
For web, you need to follow the instructions for Drift to copy the sqlite wasm binary into the web/
directory.
TODO
- Add support for offline mutations and retry
- Add tests to cover offline actions
- Authentication persistence
- Offline collections
- Offline records
- Full text search for all local records
- Add support for fields (select)
- Add support for sort
- Add support for expand single/multi
- Add support for pagination
- Add support for indirect expand
- Add support validation of create/update for required fields
- Add support for files (and local)