We continuously expand our collection of example projects. If you need an example that isn’t available yet, let us know on Discord.
Official Demos/Example Projects
React Native & Expo
React Native & Expo
Supabase Backend
- To-Do List App
- Demonstrates File/Attachment Handling
- PowerChat - Group Chat App
- To-Do List App: React Native Web & Electron
- Background Sync Demo
- Demonstrates Background Syncing using Expo’s BackgroundTask API
Django Custom Backend
- To-Do List App
- Corresponding backend: Django To-Do List Backend
Node.js Backend
- ‘MBnB’ Listing Search App with Node.js MongoDB Backend
- This repo contains both the React Native app and Node.js backend
Other
- Point of Sale (POS) App
- React Native Barebones Demo
- This is a barebones example of using PowerSync in a plain React Native app without Expo or any other framework. See here for more background.
JavaScript Web
JavaScript Web
Supabase Backend
- React To-Do List App (PWA compatible)
- Includes Full-Text Search capabilities
- React To-Do List App with Local-Only Tables - Shows data persistence without syncing
- See Local-Only Usage for more background.
- React Multi-Client Widget
- Featured on the PowerSync website demonstrating real-time data flow between clients
- Vue To-Do List App
- Nuxt To-Do List App
- Angular To-Do List App
- Yjs CRDT Text Collaboration Demo
- Vite + React + TS + PowerSync + Supabase
- E2EE Chat App - End-to-end encrypted group chat demo
- Time-Based Sync Demo - Dynamically control which data is synced to the client based on a date
Convex Backend
- PowerSync Convex To-Do List Demo - JavaScript demo app using Convex as the source backend.
Framework Integration Examples
- Electron - PowerSync in an Electron web app (renderer process)
- Also see Node.js + Electron for PowerSync in the main process, and see this blog post for more background.
- Next.js - Minimal setup with Next.js
- Webpack - Bundling with Webpack
- Vite - Bundling with Vite
- Vite with Encryption - Web database encryption demo
Node.js
Node.js
Examples
- CLI Example - Node.js CLI client connecting to PowerSync and running live queries
- Electron Main Process - PowerSync in Electron’s main process using the Node.js SDK. See this blog post for more background
- Node.js + Drizzle Minimal Demo
Capacitor (beta)
Capacitor (beta)
Examples
- Capacitor Example - PowerSync in a Capacitor app with web, Android, and iOS support
Tauri (alpha)
Tauri (alpha)
Examples
- Tauri Example - PowerSync in a Tauri app with Desktop support.
Dart/Flutter
Dart/Flutter
Supabase Backend
- To-Do List App
- Includes Full-Text Search capabilities
- Demonstrates File/Attachment Handling
- To-Do List App + Drift
- See Dart/Flutter ORM Support for more details on our Drift integration.
- To-Do List App with Local-Only Tables - Shows data persistence without syncing
- See Local-Only Usage for more background.
- Simple Chat App
- Trello Clone App
Dart Custom Backend
Node.js Custom Backend
- To-Do List App with Firebase Auth
- Corresponding backend: Node.js To-Do List Backend with Firebase Auth
Rails Custom Backend
- GoToFun App
- This repo contains both the Flutter app and Rails backend
Django Custom Backend
- To-Do List App
- Corresponding backend: Django To-Do List Backend
Self-Hosted Node.js Postgres Backend
Kotlin
Kotlin
Supabase Backend
- To-Do List App
- Supports Android, iOS, and Desktop (JVM) targets
- Includes a guide for implementing background sync on Android
- Native Android To-Do List App
- Demonstrates File/Attachment Handling
Other
- Java Example - shows how the Kotlin SDK can be used in a Java 8+ application.
Swift
Swift
Supabase Backend
- To-Do List App
- Includes Full-Text Search capabilities
- Demonstrates File/Attachment Handling
- To-Do List App + GRDB
- Demonstrates GRDB integration with PowerSync
- Encryption Demo
- Demonstrates Data Encryption using SQLite3MultipleCiphers
- Counter App
.NET (beta)
.NET (beta)
Examples
- CLI Application
- Includes an optional Supabase connector
- WPF To-Do List App
- A Windows desktop to-do list app built with WPF.
- MAUI To-Do List App
- A cross-platform to-do list app for Android, iOS, and Windows.
- Demonstrates File/Attachment Handling
Rust (beta)
Rust (beta)
Examples
- egui To-Do List - Desktop to-do list example using the egui framework and a self-hosted Node.js + Postgres backend.
Backend Examples
Backend Examples
Django
- Django Backend for To-Do List App
- For use with:
- React Native To-Do List App
- Flutter To-Do List App
- For use with:
Node.js
- Node.js Backend for To-Do List App
- Node.js Backend with Firebase Auth
- For use with: Flutter To-Do List App with Firebase Auth
Rails
- Rails Backend for GoToFun App
- For use with: Flutter GoToFun App
.NET
Self-Hosting Examples
Self-Hosting Examples
Complete Stacks with Docker Compose
- To-Do List App with Docker Compose - React web app with various backend configurations:
Community
Browse the Community GitHub Org for community starter projects, templates, and demos:GitHub - powersync-community
JavaScript & TypeScript
JavaScript & TypeScript
- How We Added E2E Encryption on Top of a Local-First Architecture
- PowerSync syncs encrypted fields while local-only tables hold decrypted data.
- Why Your App Feels Slow and How We Fixed It with PowerSync
- A React and Django app uses PowerSync to move reads and writes to local SQLite.
- Hands-on with React, Supabase, and PowerSync by Matthew Tyson
- React and Supabase tutorial covering PowerSync setup and reactive SQLite queries.
- Account Optional Apps with PowerSync
- Tutorial on letting users work locally without an account and enabling sync after they sign up.
- StackRender
- React schema editor that stores diagrams locally with PowerSync and the Drizzle driver.
- SolidJS Hooks for PowerSync Queries
- SolidJS hooks expose reactive PowerSync queries and connection status.
- Tauri + Shadcn UI by @MrLightful
- Tauri and React desktop template that uses PowerSync with native SQLite.
Dart & Flutter
Dart & Flutter
- Flutter Instagram Clone by @itsezlife
- Flutter app that uses PowerSync to sync local app data with Supabase.
- Jepsen PowerSync Testing by @nurturenature
- Jepsen tests check PowerSync consistency under network failures using Dart clients.
- Bavard by @ILDaviz
- Dart and Flutter ORM with a documented PowerSync adapter.
Custom Backends
Custom Backends
- Laravel Backend by @IsmailAshour
- Laravel backend that issues PowerSync auth tokens and applies client uploads to Postgres.
Additional Resources
Haven’t found what you’re looking for? Additional tutorial-style technical posts can be found on the PowerSync Blog. Popular pages include:- Migrating a MongoDB Atlas Device Sync App to PowerSync
- PowerSync and Supabase: Just the Basics
- Flutter Tutorial: Building An Offline-First Chat App With Supabase And PowerSync
- Speeding Up Electron Apps With PowerSync
- Building an E2EE Chat App with PowerSync + Supabase
- Collaborative Text Editing Over PowerSync (Without CRDTs)