The PowerSync core module provides the core functionality for the PowerSync Kotlin Multiplatform SDK.
This is a Kotlin Multiplatform project targeting Android, iOS platforms, with the following structure:
commonMain
- Shared code for all targets, which includes thePowerSyncBackendConnector
interface andPowerSyncBuilder
for building aPowerSync
instance. It also defines theDatabaseDriverFactory
class to be implemented in each platform.androidMain
- Android specific code, which includes a implementation ofDatabaseDriverFactory
class that creates an instance ofapp.cash.sqldelight.driver.android.AndroidSqliteDriver
using aio.requery.android.database.sqlite.RequerySQLiteOpenHelperFactory
. It also includes native SQLite bindings for Android.iosMain
- iOS specific code, which includes a implementation ofDatabaseDriverFactory
class that creates an instance ofapp.cash.sqldelight.driver.native.NativeSqliteDriver
and also sets up native SQLite bindings for iOS.
The PowerSync core module, internally makes use of SQLDelight for it database API and typesafe database query generation.
The PowerSync core module does not currently support integrating with SQLDelight from client applications.