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 thePowerSyncBackendConnectorinterface andPowerSyncBuilderfor building aPowerSyncinstance. It also defines theDatabaseDriverFactoryclass to be implemented in each platform.androidMain- Android specific code, which includes a implementation ofDatabaseDriverFactoryclass that creates an instance ofapp.cash.sqldelight.driver.android.AndroidSqliteDriverusing aio.requery.android.database.sqlite.RequerySQLiteOpenHelperFactory. It also includes native SQLite bindings for Android.iosMain- iOS specific code, which includes a implementation ofDatabaseDriverFactoryclass that creates an instance ofapp.cash.sqldelight.driver.native.NativeSqliteDriverand 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.