Flutter and Dart client

Add plexivo_client to your Flutter or Dart app and use Plexivo Postgres: queries, Auth, Realtime over WebSockets and more.

plexivo_client is the Flutter and Dart client for Plexivo Postgres as a backend. It needs Dart 3.4 or later.

The full reference, with every method and example, is on pub.dev.

Install#

bash
flutter pub add plexivo_client   # or, without Flutter: dart pub add plexivo_client

Or add it to pubspec.yaml:

yaml
dependencies:
  plexivo_client: ^0.3.0

Quick start#

dart
import 'package:plexivo_client/plexivo_client.dart';

final db = PlexivoClient(dataUrl, publishableKey);
await db.signInWithPassword(email: email, password: password);

final posts = await db.from('posts')
    .where('likes', '>', 10)
    .preload('author')
    .order('created_at', 'desc')
    .limit(20);
print(posts.first['title']);

Pass the database’s Project URL and Publishable key, both on its Connect tab.

What it covers#

Queries
Supabase-style or ORM-style, on one immutable query builder. Use isFilter and inFilter where Dart reserves is and in.
Writes
create, createMany, upsert, save, update, delete and transactions.
Auth
Password, email code, Google, GitHub and Microsoft sign-in, guests, two-step verification, device sessions and the authStateChanges stream.
Realtime
db.channel('changes:orders') with a changes stream; rooms with broadcast and presence. Channels reconnect on their own.
GraphQL
db.graphql(query) and live queries with db.graphqlSubscribe.
Functions and RPC
db.functions.invoke('name', body: {...}) and db.rpc('fn', {...}).

Keep sessions safe#

Store sessions in encrypted device storage: pass initialSession when you create the client, and save updated sessions from authStateChanges.

Updated 27 October 2026