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 10

  2. powersync.dart powersync.dart Public

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

    Dart 134 19

  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 322 24

  4. powersync-kotlin powersync-kotlin Public

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

    Kotlin 35 4

  5. powersync-service powersync-service Public

    TypeScript 125 11

Repositories

Showing 10 of 44 repositories

People

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

Sponsoring

  • @ospfranco
  • @schickling