> ## Documentation Index
> Fetch the complete documentation index at: https://powersync-storage-v4-ga.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Demo Apps & Example Projects

> Demo apps and example projects showcasing PowerSync across all supported platforms and backends.

The best way to understand how PowerSync works is to explore it hands-on. Browse our collection of demo apps and example projects to see PowerSync in action, experiment with different features, or use as a reference for your own app.

All examples are organized by platform and backend technology. You can adapt any example to work with your preferred backend (see [App Backend](/configuration/app-backend)).

<Note>
  We continuously expand our collection of example projects. If you need an example that isn't available yet, [let us know on Discord](https://discord.gg/powersync).
</Note>

## Official Demos/Example Projects

<AccordionGroup>
  <Accordion title="React Native & Expo" icon="react">
    #### Supabase Backend

    * [To-Do List App](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-native-supabase-todolist#readme)
      * Demonstrates [File/Attachment Handling](/client-sdks/advanced/attachments)
    * [PowerChat - Group Chat App](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-native-supabase-group-chat#readme)
    * [To-Do List App: React Native Web & Electron](https://github.com/powersync-community/powersync-react-native-web-expo-electron#readme)
    * [Background Sync Demo](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-native-supabase-background-sync)
      * Demonstrates [Background Syncing](/client-sdks/advanced/background-syncing) using Expo's BackgroundTask API

    #### Django Custom Backend

    * [To-Do List App](https://github.com/powersync-ja/powersync-js/tree/main/demos/django-react-native-todolist#readme)
      * Corresponding backend: [Django To-Do List Backend](https://github.com/powersync-ja/powersync-django-backend-todolist-demo)

    #### Node.js Backend

    * ['MBnB' Listing Search App with Node.js MongoDB Backend](https://github.com/powersync-ja/powersync-react-native-mongodb-mbnb#readme)
      * This repo contains both the React Native app and Node.js backend

    #### Other

    * [Point of Sale (POS) App](https://github.com/powersync-community/powersync-pos-demo#readme)
    * [React Native Barebones Demo](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-native-barebones)
      * This is a barebones example of using PowerSync in a plain React Native app without Expo or any other framework. See [here](/client-sdks/reference/react-native-and-expo#installation) for more background.
  </Accordion>

  <Accordion title="JavaScript Web" icon="js">
    #### Supabase Backend

    * [React To-Do List App](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-supabase-todolist#readme) (PWA compatible)
      * Includes [Full-Text Search](/client-sdks/full-text-search) capabilities
    * [React To-Do List App with Local-Only Tables](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-supabase-todolist-optional-sync#readme) - Shows data persistence without syncing
      * See [Local-Only Usage](/client-sdks/advanced/local-only-usage) for more background.
    * [React Multi-Client Widget](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-multi-client#readme)
      * Featured on the [PowerSync website](https://www.powersync.com/demo) demonstrating real-time data flow between clients
    * [Vue To-Do List App](https://github.com/powersync-ja/powersync-js/tree/main/demos/vue-supabase-todolist#readme)
    * [Nuxt To-Do List App](https://github.com/powersync-ja/powersync-js/tree/main/demos/nuxt-supabase-todolist#readme)
    * [Angular To-Do List App](https://github.com/powersync-ja/powersync-js/tree/main/demos/angular-supabase-todolist#readme)
    * [Yjs CRDT Text Collaboration Demo](https://github.com/powersync-ja/powersync-js/tree/main/demos/yjs-react-supabase-text-collab#readme)
    * [Vite + React + TS + PowerSync + Supabase](https://github.com/powersync-community/vite-react-ts-powersync-supabase#readme)
    * [E2EE Chat App](https://github.com/powersync-community/react-supabase-chat-e2ee#readme) - End-to-end encrypted group chat demo
    * [Time-Based Sync Demo](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-supabase-time-based-sync) - Dynamically control which data is synced to the client based on a date

    #### Convex Backend

    * [PowerSync Convex To-Do List Demo](https://github.com/powersync-community/powersync-convex-todolist-demo) - JavaScript demo app using Convex as the source backend.

    #### Framework Integration Examples

    * [Electron](https://github.com/powersync-ja/powersync-js/tree/main/demos/example-electron) - PowerSync in an Electron web app (renderer process)
      * Also see [Node.js + Electron](https://github.com/powersync-ja/powersync-js/tree/main/demos/example-electron-node) for PowerSync in the main process, and see [this blog post](https://www.powersync.com/blog/speeding-up-electron-apps-with-powersync) for more background.
    * [Next.js](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-nextjs#readme) - Minimal setup with Next.js
    * [Webpack](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-webpack#readme) - Bundling with Webpack
    * [Vite](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-vite#readme) - Bundling with Vite
    * [Vite with Encryption](https://github.com/powersync-ja/powersync-js/blob/main/demos/example-vite-encryption#readme) - Web database encryption demo
  </Accordion>

  <Accordion title="Node.js" icon="node-js">
    #### Examples

    * [CLI Example](https://github.com/powersync-ja/powersync-js/tree/main/demos/example-node) - Node.js CLI client connecting to PowerSync and running live queries
    * [Electron Main Process](https://github.com/powersync-ja/powersync-js/tree/main/demos/example-electron-node#readme) - PowerSync in Electron's main process using the Node.js SDK. See [this blog post](https://www.powersync.com/blog/speeding-up-electron-apps-with-powersync) for more background
    * [Node.js + Drizzle Minimal Demo](https://github.com/powersync-community/nodejs-drizzle-example)
  </Accordion>

  <Accordion title="Capacitor (beta)" icon="c">
    #### Examples

    * [Capacitor Example](https://github.com/powersync-ja/powersync-js/tree/main/demos/example-capacitor#readme) - PowerSync in a Capacitor app with web, Android, and iOS support
  </Accordion>

  <Accordion title="Tauri (alpha)" icon="https://mintcdn.com/powersync-storage-v4-ga/rBGKncy7doDTnA5c/logo/tauri.svg?fit=max&auto=format&n=rBGKncy7doDTnA5c&q=85&s=9d5b02d2b53eda6fa1294f876c5d4130" width="128" height="128" data-path="logo/tauri.svg">
    #### Examples

    * [Tauri Example](https://github.com/powersync-ja/powersync-js/tree/main/demos/tauri-app#readme) - PowerSync in a Tauri app with Desktop support.
  </Accordion>

  <Accordion title="Dart/Flutter" icon="flutter">
    #### Supabase Backend

    * [To-Do List App](https://github.com/powersync-ja/powersync.dart/tree/main/demos/supabase-todolist#readme)
      * Includes [Full-Text Search](/client-sdks/full-text-search) capabilities
      * Demonstrates [File/Attachment Handling](/client-sdks/advanced/attachments)
    * [To-Do List App + Drift](https://github.com/powersync-ja/powersync.dart/tree/main/demos/supabase-todolist-drift#readme)
      * See [Dart/Flutter ORM Support](/client-sdks/orms/flutter-orm-support) for more details on our Drift integration.
    * [To-Do List App with Local-Only Tables](https://github.com/powersync-ja/powersync.dart/tree/main/demos/supabase-todolist-optional-sync#readme) - Shows data persistence without syncing
      * See [Local-Only Usage](/client-sdks/advanced/local-only-usage) for more background.
    * [Simple Chat App](https://github.com/powersync-ja/powersync.dart/tree/main/demos/supabase-simple-chat#readme)
    * [Trello Clone App](https://github.com/powersync-ja/powersync.dart/tree/main/demos/supabase-trello#readme)

    #### Dart Custom Backend

    * [Built with Flutter and Serverpod](https://github.com/powersync-community/powersync-serverpod-demo)
    * [Built with Jaspr, shelf, Riverpod and Drift](https://github.com/powersync-community/self-host-dart-fullstack)

    #### Node.js Custom Backend

    * [To-Do List App with Firebase Auth](https://github.com/powersync-ja/powersync.dart/tree/main/demos/firebase-nodejs-todolist#readme)
      * Corresponding backend: [Node.js To-Do List Backend with Firebase Auth](https://github.com/powersync-ja/powersync-nodejs-firebase-backend-todolist-demo)

    #### Rails Custom Backend

    * [GoToFun App](https://github.com/powersync-ja/powersync-rails-flutter-demo)
      * This repo contains both the Flutter app and Rails backend

    #### Django Custom Backend

    * [To-Do List App](https://github.com/powersync-ja/powersync.dart/tree/main/demos/django-todolist#readme)
      * Corresponding backend: [Django To-Do List Backend](https://github.com/powersync-ja/powersync-django-backend-todolist-demo)

    #### Self-Hosted Node.js Postgres Backend

    * [Flutter Home Screen Widget Demo](https://github.com/powersync-community/flutter-home-widget)
  </Accordion>

  <Accordion title="Kotlin" icon="android">
    #### Supabase Backend

    * [To-Do List App](https://github.com/powersync-ja/powersync-kotlin/tree/main/demos/supabase-todolist#readme)
      * Supports Android, iOS, and Desktop (JVM) targets
      * Includes a guide for [implementing background sync on Android](https://github.com/powersync-ja/powersync-kotlin/blob/main/demos/supabase-todolist/docs/BackgroundSync.md)
    * [Native Android To-Do List App](https://github.com/powersync-ja/powersync-kotlin/tree/main/demos/android-supabase-todolist#readme)
      * Demonstrates [File/Attachment Handling](/client-sdks/advanced/attachments)

    #### Other

    * [Java Example](https://github.com/powersync-community/java-kmp-sdk-example#readme) - shows how the Kotlin SDK can be used in a Java 8+ application.
  </Accordion>

  <Accordion title="Swift" icon="swift">
    #### Supabase Backend

    * [To-Do List App](https://github.com/powersync-ja/powersync-swift/tree/main/Demos/PowerSyncExample)
      * Includes [Full-Text Search](/client-sdks/full-text-search) capabilities
      * Demonstrates [File/Attachment Handling](/client-sdks/advanced/attachments)
    * [To-Do List App + GRDB](https://github.com/powersync-ja/powersync-swift/tree/main/Demos/GRDBDemo)
      * Demonstrates [GRDB integration](/client-sdks/orms/swift/grdb) with PowerSync
    * [Encryption Demo](https://github.com/powersync-ja/powersync-swift/tree/main/Demos/SwiftEncryptionDemo)
      * Demonstrates [Data Encryption](/usage/use-case-examples/data-encryption) using SQLite3MultipleCiphers
    * [Counter App](https://github.com/powersync-community/swift-supabase-counter#readme)
  </Accordion>

  <Accordion title=".NET (beta)" icon="microsoft">
    #### Examples

    * [CLI Application](https://github.com/powersync-ja/powersync-dotnet/tree/main/demos/CommandLine#readme)
      * Includes an optional [Supabase connector](https://github.com/powersync-ja/powersync-dotnet/blob/main/demos/CommandLine/SupabaseConnector.cs)
    * [WPF To-Do List App](https://github.com/powersync-ja/powersync-dotnet/tree/main/demos/WPF#readme)
      * A Windows desktop to-do list app built with WPF.
    * [MAUI To-Do List App](https://github.com/powersync-ja/powersync-dotnet/tree/main/demos/MAUITodo#readme)
      * A cross-platform to-do list app for Android, iOS, and Windows.
      * Demonstrates [File/Attachment Handling](/client-sdks/advanced/attachments)
  </Accordion>

  <Accordion title="Rust (beta)" icon="rust">
    #### Examples

    * [egui To-Do List](https://github.com/powersync-ja/powersync-native/blob/main/README.md) - Desktop to-do list example using the egui framework and a self-hosted Node.js + Postgres backend.
  </Accordion>

  <Accordion title="Backend Examples" icon="screwdriver-wrench">
    #### Django

    * [Django Backend for To-Do List App](https://github.com/powersync-ja/powersync-django-backend-todolist-demo)
      * For use with:
        * React Native [To-Do List App](https://github.com/powersync-ja/powersync-js/tree/main/demos/django-react-native-todolist)
        * Flutter [To-Do List App](https://github.com/powersync-ja/powersync.dart/tree/main/demos/django-todolist)

    #### Node.js

    * [Node.js Backend for To-Do List App](https://github.com/powersync-ja/powersync-nodejs-backend-todolist-demo)
    * [Node.js Backend with Firebase Auth](https://github.com/powersync-ja/powersync-nodejs-firebase-backend-todolist-demo)
      * For use with: Flutter [To-Do List App with Firebase Auth](https://github.com/powersync-ja/powersync.dart/tree/main/demos/firebase-nodejs-todolist)

    #### Rails

    * [Rails Backend for GoToFun App](https://github.com/powersync-ja/powersync-rails-flutter-demo/tree/main/gotofun-backend)
      * For use with: Flutter [GoToFun App](https://github.com/powersync-ja/powersync-rails-flutter-demo/tree/main/gotofun-app)

    #### .NET

    * [.NET Backend for To-Do List App](https://github.com/powersync-ja/powersync-dotnet-backend-demo)
  </Accordion>

  <Accordion title="Self-Hosting Examples" icon="desktop">
    #### Complete Stacks with Docker Compose

    * [To-Do List App with Docker Compose](https://github.com/powersync-ja/self-host-demo) - React web app with various backend configurations:
      * [Node.js + Postgres](https://github.com/powersync-ja/self-host-demo/tree/main/demos/nodejs)
      * [Node.js + Postgres + Postgres Bucket Storage](https://github.com/powersync-ja/self-host-demo/tree/main/demos/nodejs-postgres-bucket-storage)
      * [Node.js + MongoDB](https://github.com/powersync-ja/self-host-demo/tree/main/demos/nodejs-mongodb)
      * [Node.js + MySQL](https://github.com/powersync-ja/self-host-demo/tree/main/demos/nodejs-mysql)
      * [Node.js + SQL Server](https://github.com/powersync-ja/self-host-demo/tree/main/demos/nodejs-mssql)
      * [Supabase (Postgres) + Local Development](https://github.com/powersync-ja/self-host-demo/tree/main/demos/supabase)
      * [Django + Postgres](https://github.com/powersync-ja/self-host-demo/tree/main/demos/django)
  </Accordion>
</AccordionGroup>

## Community

Browse the Community GitHub Org for community starter projects, templates, and demos:

<Card title="GitHub - powersync-community" icon="github" horizontal href="https://github.com/powersync-community" />

The projects, tutorials, and articles below are from community members. We haven't necessarily vetted them, and some may use older PowerSync APIs or configuration. If you've built something with PowerSync or written about it, [open a pull request](https://github.com/powersync-ja/powersync-docs/edit/main/intro/examples.mdx) to add it to this list.

<AccordionGroup>
  <Accordion title="JavaScript & TypeScript" icon="js">
    * [How We Added E2E Encryption on Top of a Local-First Architecture](https://zentline.com/en/blog/end-to-end-encryption-on-top-of-local-first-sync/)
      * PowerSync syncs encrypted fields while local-only tables hold decrypted data.
    * [Why Your App Feels Slow and How We Fixed It with PowerSync](https://zentline.com/en/blog/why-your-app-is-slow-powersync/)
      * A React and Django app uses PowerSync to move reads and writes to local SQLite.
    * [Hands-on with React, Supabase, and PowerSync](https://www.infoworld.com/article/4168581/developing-local-first-apps-with-react-supabase-and-powersync.html) by Matthew Tyson
      * React and Supabase tutorial covering PowerSync setup and reactive SQLite queries.
    * [Account Optional Apps with PowerSync](https://www.maxmntl.com/blog/optional-account-powersync/)
      * Tutorial on letting users work locally without an account and enabling sync after they sign up.
    * [StackRender](https://github.com/stackrender/stackrender)
      * React schema editor that stores diagrams locally with PowerSync and the [Drizzle driver](/client-sdks/orms/js/drizzle).
    * [SolidJS Hooks for PowerSync Queries](https://github.com/aboviq/powersync-solid)
      * SolidJS hooks expose reactive PowerSync queries and connection status.
    * [Tauri + Shadcn UI by @MrLightful](https://github.com/MrLightful/powersync-tauri)
      * Tauri and React desktop template that uses PowerSync with native SQLite.
  </Accordion>

  <Accordion title="Dart & Flutter" icon="flutter">
    * [Flutter Instagram Clone by @itsezlife](https://github.com/itsezlife/flutter-instagram-offline-first-clone)
      * Flutter app that uses PowerSync to sync local app data with Supabase.
    * [Jepsen PowerSync Testing by @nurturenature](https://github.com/nurturenature/jepsen-powersync)
      * Jepsen tests check PowerSync consistency under network failures using Dart clients.
    * [Bavard by @ILDaviz](https://ildaviz.github.io/bavard/)
      * Dart and Flutter ORM with a documented PowerSync adapter.
  </Accordion>

  <Accordion title="Custom Backends" icon="screwdriver-wrench">
    * [Laravel Backend by @IsmailAshour](https://github.com/IsmailAshour/powersync-laravel-backend)
      * Laravel backend that issues PowerSync auth tokens and applies client uploads to Postgres.
  </Accordion>
</AccordionGroup>

## Additional Resources

Haven't found what you're looking for?

Additional tutorial-style technical posts can be found on the [PowerSync Blog](https://www.powersync.com/blog). Popular pages include:

* [Migrating a MongoDB Atlas Device Sync App to PowerSync](https://www.powersync.com/blog/migrating-a-mongodb-atlas-device-sync-app-to-powersync)
* [PowerSync and Supabase: Just the Basics](https://www.powersync.com/blog/powersync-and-supabase-just-the-basics)
* [Flutter Tutorial: Building An Offline-First Chat App With Supabase And PowerSync](https://www.powersync.com/blog/flutter-tutorial-building-an-offline-first-chat-app-with-supabase-and-powersync)
* [Speeding Up Electron Apps With PowerSync](https://www.powersync.com/blog/speeding-up-electron-apps-with-powersync)
* [Building an E2EE Chat App with PowerSync + Supabase](https://www.powersync.com/blog/building-an-e2ee-chat-app-with-powersync-supabase)
* [Collaborative Text Editing Over PowerSync](https://www.powersync.com/blog/collaborative-text-editing-over-powersync) (Without CRDTs)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.