> ## Documentation Index
> Fetch the complete documentation index at: https://docs.powersync.com/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)).

<Check>
  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).
</Check>

## Official Demos/Example Projects

<AccordionGroup>
  <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="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)
    * [OP-SQLite Barebones Demo](https://github.com/powersync-ja/powersync-js/tree/main/demos/react-native-barebones-opsqlite#readme)
      * This is a barebones example of using the OP-SQLite driver with the PowerSync React Native Client SDK. See [here](/client-sdks/reference/react-native-and-expo#install-peer-dependencies) 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

    #### 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="Capacitor (alpha)" 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/65BugQOyCcrBb77m/logo/tauri.svg?fit=max&auto=format&n=65BugQOyCcrBb77m&q=85&s=746c2ecb7ee790f16024e08ac923129b" 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="Node.js (beta)" 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="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.
  </Accordion>

  <Accordion title="Rust (alpha)" 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

### Community GitHub Org

Browse the Community GitHub Org for a collection of community-based starter projects, templates, demos and other projects to help you succeed with PowerSync:

### Notable Community Projects

This is a list of additional projects we've spotted from community members 🙌 These projects haven't necessarily been vetted by us.

<AccordionGroup>
  <Accordion title="Custom Backends" icon="screwdriver-wrench">
    * [Laravel Backend by @IsmailAshour](https://github.com/IsmailAshour/powersync-laravel-backend)
  </Accordion>

  <Accordion title="Flutter Projects" icon="flutter">
    * [Flutter Instagram Clone with Supabase + Firebase by @Gambley1](https://github.com/Gambley1/flutter-instagram-offline-first-clone)
    * [Jepsen PowerSync Testing - Formal consistency validation framework by @nurturenature](https://github.com/nurturenature/jepsen-powersync)
    * [Bavard -An Eloquent-inspired ORM for Dart/Flutter by @ILDaviz](https://ildaviz.github.io/bavard/)
  </Accordion>

  <Accordion title="JavaScript & TypeScript Projects" icon="js">
    * [SolidJS Hooks for PowerSync Queries by @aboviq](https://github.com/aboviq/powersync-solid)
    * [Effect + Kysely + Stytch Integration by @guillempuche](https://github.com/guillempuche/localfirst_react_server)
    * [Tauri + Shadcn UI by @MrLightful](https://github.com/MrLightful/powersync-tauri)
    * [Expo Web Integration by @ImSingee](https://github.com/ImSingee/powersync-web-workers)
      * Note: Our [React Native Web support](/client-sdks/frameworks/react-native-web-support) now eliminates the need to patch the `@powersync/web` module
    * [Attachments Library for Node.js by @muhammedv](https://www.npmjs.com/package/@muhammedv/powersync-attachments-for-node)
  </Accordion>
</AccordionGroup>

### Notable Community Tutorials

* [Account Optional Apps with PowerSync](https://www.maxmntl.com/blog/optional-account-powersync/)
  * Tutorial for starting your new user app experience fully local (without sync,) and then to switch them to a synced experience
* [Building an Offline-First Chat App Using PowerSync and Supabase](https://bndkt.com/blog/2023/building-an-offline-first-chat-app-using-powersync-and-supabase)
  * Postgres (Supabase) + React Native + Expo + Tamagui
* [Building an Offline-First Mobile App with PowerSync](https://blog.stackademic.com/building-an-offline-first-mobile-app-with-powersync-40674d8b7ea1)
  * Postgres + Flutter + Nest.js + Prisma ORM + Firebase Auth
* [Implementing Local-First Architecture: A Guide to MongoDB Cluster and PowerSync Integration](https://blog.stackademic.com/implementing-local-first-architecture-a-guide-to-mongodb-cluster-and-powersync-integration-6b21fa8059a1)
  * MongoDB Atlas + Next.js

## 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)
