Web Analytics

kotbase

⭐ 113 stars English by jeffdgr8

Maven Central Kotlin GitHub License Couchbase Community Slack Channel

Kotbase

Kotlin Multiplatform library for Couchbase Lite

Introduction

Kotbase pairs Kotlin Multiplatform with Couchbase Lite, an embedded NoSQL JSON document database. Couchbase Lite can be used as a standalone client database, or paired with Couchbase Server and Sync Gateway or Capella App Services for cloud to edge data synchronization. Features include:

Kotbase provides full Enterprise and Community Edition API support for Android and JVM (via Java SDK), native iOS and macOS (via Objective-C SDK), and experimental support for native Linux and Windows (via C SDK).

Installation

Add either the Community or Enterprise Edition dependency in the commonMain source set dependencies of your shared module's build.gradle.kts:

kotlin {
    sourceSets {
        commonMain.dependencies {
            // Community Edition
            implementation("dev.kotbase:couchbase-lite:3.2.4-1.2.0")
            // or Enterprise Edition
            implementation("dev.kotbase:couchbase-lite-ee:3.2.4-1.2.0")
        }
    }
}

Note
The Couchbase Lite Community Edition is free and open source. The Enterprise Edition is free for development and
testing, but requires a license from Couchbase for production
use. See Community vs Enterprise Edition.

Kotbase is published to Maven Central. The Couchbase Lite Enterprise Edition dependency additionally requires the Couchbase Maven repository.

repositories {
    mavenCentral()
    maven("https://mobile.maven.couchbase.com/maven2/dev/")
}

Native Platforms

Native platform targets should additionally link to the Couchbase Lite dependency native binary. See Supported Platforms for more details.

Linux

Targeting JVM running on Linux or native Linux, both require a specific version of the libicu dependency. (You will see an error such as libLiteCore.so: libicuuc.so.71: cannot open shared object file: No such file or directory indicating the expected version.) If the required version isn't available from your distribution's package manager, you can download it from GitHub.

Documentation

Kotbase documentation can be found at kotbase.dev, including getting started examples, usage guide, and API reference.

Differences from Java SDK

Kotbase's API aligns with the Couchbase Lite Java and Android KTX SDKs. Migrating existing Kotlin code can be as straightforward as changing the import package from com.couchbase.lite to kotbase, with some exceptions: