Skip to content

A high-performance, non-blocking database driver for PostgreSQL, MySQL, and SQLite, written for Kotlin Native.

License

Notifications You must be signed in to change notification settings

smyrgeorge/sqlx4k-sqldelight

Repository files navigation

Sqlx4k-sqldelight

Build Maven Central GitHub License GitHub commit activity GitHub issues Kotlin

A high-performance, non-blocking database driver for PostgreSQL, MySQL, and SQLite, written for Kotlin Native. Looking to build efficient, cross-platform applications with Kotlin Native.

This repository only contains the necessary parts for the sqldelight integration. If you are looking the driver implementation, you can find it here: https://github.com/smyrgeorge/sqlx4k

📖 Documentation

🏠 Homepage (under construction)

Usage

Only PostgreSQL and MySQL is supported for now.

// build.gradle.kts

kotlin {
    sourceSets {
        val commonMain by getting {
            dependencies {
                implementation("io.github.smyrgeorge:sqlx4k-postgres:x.y.z")
                implementation("io.github.smyrgeorge:sqlx4k-sqldelight:x.y.z")
            }
        }
    }
}

sqldelight {
    databases.register("Database") {
        generateAsync = true
        packageName = "db.entities"
        dialect("io.github.smyrgeorge:sqlx4k-sqldelight-dialect-postgres:x.y.z")
        // Or 'io.github.smyrgeorge:sqlx4k-sqldelight-dialect-mysql:x.y.z' for MySQl. 
    }
}

Check the examples for more information.

Supported targets

We support the following targets:

  • iosArm64
  • androidNativeX64
  • androidNativeArm64
  • macosArm64
  • macosX64
  • linuxArm64
  • linuxX64
  • mingwX64
  • wasmJs (potential future candidate)
  • jvm (potential future candidate)