Skip to content
@powersync-ja

PowerSync

Sync engine for building local-first apps with instantly-responsive UI/UX and simplified state transfer. A product of JourneyApps

PowerSync: Backend DB <> SQLite bi-directional sync engine

PowerSync keeps backend databases in sync with on-device SQLite databases embedded in a client SDK. It enables instantly-responsive local-first & offline-first apps that remain available even when network connectivity is poor or non-existent.

Local-first is a paradigm where your app code works directly with a client-side embedded database, which automatically syncs with a backend database in the background. It overlaps with the offline-first paradigm.

PowerSync is designed to be backend database agnostic, and currently supports Postgres (stable), MongoDB (alpha), and MySQL (alpha).

PowerSync is also designed to be client-side framework agnostic, and currently supports Flutter, React Native & Expo, web/JS, Kotlin Multiplatform (beta) and Swift (alpha)

Additional supported backend databases and client SDKs are on our roadmap.

Quick links

How do I get started?

See the introduction and the Quickstart guide to get started.

Tutorials:

Repos

PowerSync client SDKs

Client SDKs are open-source, available under the Apache 2.0 license:

PowerSync Service

The PowerSync Service is source-available under an FSL license.

The following deployment options are available:

  1. PowerSync Cloud: A cloud-based service with pricing plans
  2. PowerSync Open Edition: A free source-available self-hosted version
  3. PowerSync Enterprise Self-Hosted Edition: A self-hosted Enterprise Edition with dedicated support plans, extra functionality and custom pricing.

See also: Licensing & Terms overview.

Other supporting client-side libraries

Open-source under Apache 2.0 or MIT license:

  • powersync-sqlite-core — Rust-based SQLite extension used by PowerSync client SDKs.
  • sqlite_async.dart — SQLite library for Dart & Flutter (used by PowerSync Flutter/Dart SDK, and can also be used stand-alone)
  • drift_sqlite_async — ORM integration for Drift for Dart & Flutter (usable with PowerSync Flutter/Dart SDK)

Examples and demo apps

See here: Demo Apps / Examples

Demo apps are listed under the backend they use, but you can easily wire up your own backend as documented here.

We're constantly expanding our list of example implementations. If you'd like to see an example currently not available, let us know on Discord.

Team

PowerSync was spun off from JourneyApps, a product that's been in production for over 10 years. PowerSync was founded by @cahofmeyr and @rkistner. Learn more about the team here.

Contributing

See the Community Code of Conduct for our community pledge, standards, responsibilities and guidelines.

Support

We have an open community Discord. Join us there for questions, help or just a friendly chat.

Pinned Loading

  1. sqlite_async.dart sqlite_async.dart Public

    High-performance asynchronous interface for SQLite on Dart & Flutter

    Dart 46 9

  2. powersync.dart powersync.dart Public

    SDK that enables local-first and real-time reactive apps with embedded SQLite for Flutter/Dart clients

    Dart 133 18

  3. powersync-js powersync-js Public

    SDK that enables local-first and real-time reactive apps with embedded SQLite for JavaScript clients, including React Native and Web

    TypeScript 310 23

  4. powersync-kotlin powersync-kotlin Public

    SDK that enables local-first and real-time reactive apps with embedded SQLite for Kotlin Multiplatform clients

    Kotlin 31 4

  5. powersync-service powersync-service Public

    TypeScript 125 10

Repositories

Showing 10 of 44 repositories
  • powersync-js Public

    SDK that enables local-first and real-time reactive apps with embedded SQLite for JavaScript clients, including React Native and Web

    powersync-ja/powersync-js’s past year of commit activity
    TypeScript 310 Apache-2.0 23 8 9 Updated Nov 14, 2024
  • powersync-ja/powersync-service’s past year of commit activity
    TypeScript 125 10 1 6 Updated Nov 14, 2024
  • powersync.dart Public

    SDK that enables local-first and real-time reactive apps with embedded SQLite for Flutter/Dart clients

    powersync-ja/powersync.dart’s past year of commit activity
    Dart 133 18 5 0 Updated Nov 13, 2024
  • powersync-ja/self-host-demo’s past year of commit activity
    JavaScript 36 5 1 1 Updated Nov 12, 2024
  • react-native-quick-sqlite Public

    Embedded SQLite with JSI bindings

    powersync-ja/react-native-quick-sqlite’s past year of commit activity
    C 7 MIT 2 1 1 Updated Nov 11, 2024
  • wa-sqlite Public Forked from rhashimoto/wa-sqlite

    WebAssembly SQLite with experimental support for browser storage extensions

    powersync-ja/wa-sqlite’s past year of commit activity
    JavaScript 6 MIT 58 0 1 Updated Nov 11, 2024
  • powersync-kotlin-swift-demo Public

    Demo App using PowerSync Swift SDK via KMMBridge + SKIE

    powersync-ja/powersync-kotlin-swift-demo’s past year of commit activity
    Swift 3 1 0 0 Updated Nov 11, 2024
  • powersync-kotlin Public

    SDK that enables local-first and real-time reactive apps with embedded SQLite for Kotlin Multiplatform clients

    powersync-ja/powersync-kotlin’s past year of commit activity
    Kotlin 31 4 1 2 Updated Nov 11, 2024
  • sqlite3.dart Public Forked from simolus3/sqlite3.dart

    sqlite3 bindings for Dart

    powersync-ja/sqlite3.dart’s past year of commit activity
    Dart 1 MIT 76 0 1 Updated Nov 11, 2024
  • powersync-sqlite-core Public

    PowerSync SQLite Extension

    powersync-ja/powersync-sqlite-core’s past year of commit activity
    C 19 Apache-2.0 2 0 1 Updated Nov 8, 2024

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Sponsoring

  • @ospfranco
  • @schickling