Web Analytics

kotbase

⭐ 113 stars Japanese by jeffdgr8

Maven Central Kotlin GitHub License Couchbase Community Slack Channel

Kotbase

Kotlin マルチプラットフォームライブラリ for Couchbase Lite

はじめに

Kotbase は Kotlin Multiplatform と埋め込み型 NoSQL JSON ドキュメントデータベースの Couchbase Lite を組み合わせたものです。Couchbase Lite はスタンドアロンのクライアントデータベースとして使用でき、また Couchbase ServerSync Gateway または Capella App Services と組み合わせてクラウドからエッジへのデータ同期を行うことができます。主な特徴は以下の通りです:

Kotbase は Android と JVM 向けに完全な Enterprise および Community Edition API サポートを提供します(Java SDK 経由)、ネイティブ iOS と macOS 向けに(Objective-C SDK 経由)、そしてネイティブ Linux と Windows 向けに実験的サポートを提供します(C SDK 経由)。

インストール

共有モジュールの build.gradle.kts にある commonMain ソースセットの依存関係に Community または Enterprise Edition の依存関係を追加してください:

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")
        }
    }
}

注意
Couchbase Lite Community Editionは無料でオープンソースです。Enterprise Editionは開発および
テストには無料ですが、本番環境での使用にはCouchbaseからのライセンスが必要です。
Community版とEnterprise版の違いはこちら。
KotbaseはMaven Centralに公開されています。Couchbase Lite Enterprise Editionの依存関係には
さらにCouchbase Mavenリポジトリが必要です。

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

ネイティブプラットフォーム

ネイティブプラットフォームのターゲットは、Couchbase Lite依存のネイティブバイナリにもリンクする必要があります。詳細は対応プラットフォームを参照してください。

Linux

Linux上で動作するJVMまたはネイティブLinuxをターゲットにする場合、特定バージョンのlibicu依存関係が必要です。(libLiteCore.so: libicuuc.so.71: cannot open shared object file: No such file or directoryのようなエラーが表示され、期待されるバージョンが示されます。)必要なバージョンがディストリビューションのパッケージマネージャーで利用できない場合は、GitHubからダウンロードできます。

ドキュメント

Kotbaseのドキュメントはkotbase.devで入手でき、入門例使用ガイド、およびAPIリファレンスが含まれています。

Java SDKとの違い

KotbaseのAPIはCouchbase LiteのJavaおよびAndroid KTX SDKに整合しています。既存のKotlinコードの移行は、インポートパッケージをcom.couchbase.liteからkotbaseに変更するだけで済む場合がありますが、一部例外があります: