Skip to content

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

License

Notifications You must be signed in to change notification settings

powersync-ja/powersync-swift

Repository files navigation

PowerSync is a sync engine for building local-first apps with instantly-responsive UI/UX and simplified state transfer. Syncs between SQLite on the client-side and Postgres, MongoDB or MySQL on the server-side.

PowerSync Swift

This is the PowerSync SDK for Swift clients. The SDK reference is available here.

Beta Release

This SDK is currently in a beta release it is suitable for production use, given you have tested your use case(s) extensively. If you find a bug or issue, please open a GitHub issue. Questions or feedback can be posted on our community Discord - we'd love to hear from you.

Structure: Packages

  • Sources

    • This is the Swift SDK implementation.

Demo Apps / Example Projects

The easiest way to test the PowerSync Swift SDK is to run our demo application.

  • Demo/PowerSyncExample: A simple to-do list application demonstrating the use of the PowerSync Swift SDK using a Supabase connector.

Installation

Add

    dependencies: [
        ...
        .package(url: "https://github.com/powersync-ja/powersync-swift", exact: "<version>")
    ],
    targets: [
        .target(
            name: "YourTargetName",
            dependencies: [
                ...
                .product(
                    name: "PowerSync",
                    package: "powersync-swift"
                ),
            ]
        )
    ]

to your Package.swift file and pin the dependency to a specific version. The version is required because the package is in beta.

to your Package.swift file and pin the dependency to a specific version. This is required because the package is in beta.

Underlying Kotlin Dependency

The PowerSync Swift SDK currently makes use of the PowerSync Kotlin Multiplatform SDK with the API tool SKIE and KMMBridge under the hood to help generate and publish a native Swift package. We will move to an entirely Swift native API in v1 and do not expect there to be any breaking changes. For more details, see the Swift SDK reference.

Migration from Alpha to Beta

See these developer notes if you are migrating from the alpha to the beta version of the Swift SDK.

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages