Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/dushistov/couchbase-lite-rust

Lightweight, embedded, syncable NoSQL database engine wrapper for Rust
https://github.com/dushistov/couchbase-lite-rust

Last synced: 4 days ago
JSON representation

Lightweight, embedded, syncable NoSQL database engine wrapper for Rust

Awesome Lists containing this project

README

        

# couchbase-lite-rust [![Build Status](https://github.com/Dushistov/couchbase-lite-rust/actions/workflows/main.yml/badge.svg?branch=master)](https://github.com/Dushistov/couchbase-lite-rust/actions?query=workflow%3ACI+branch%3Amaster)

Rust wrapper for couchbase-lite-core lightweight, embedded, syncable NoSQL database engine.

Quote from [couchbase-lite-core](https://github.com/couchbase/couchbase-lite-core)

> **Couchbase Lite Core** (aka **LiteCore**) is the next-generation core storage and query engine for [Couchbase Lite][CBL]. It provides a cross-platform implementation of the database CRUD and query features, document versioning, and replication/sync.
> All platform implementations of Couchbase Lite (from 2.0 onward) are built atop this core, adding higher-level language & platform bindings. But LiteCore may find other uses too, perhaps for applications that want a fast minimalist data store with map/reduce indexing and queries, but don't need the higher-level features of Couchbase Lite.

## Optional features

### couchbase-lite-core-sys

Build script can either download couchbase-lite-core library (C/C++) with help of git ("git-download" feature),
or you can provide path to source code via `COUCHBASE_LITE_CORE_SRC_DIR`environment variable.
After that build script can run cmake and proper build command for you ("build" feature)
or you can build couchbase-lite-core by yourself and provide path to build directory via `COUCHBASE_LITE_CORE_BUILD_DIR` environment variable.
Also it is possible that static libraries in `COUCHBASE_LITE_CORE_BUILD_DIR` has unique placement,
for example if you use cmake to generate XCode/Visual Studio project,
then you can use `COUCHBASE_LITE_CORE_BUILD_DIRS` environment variable in such way: "directory/with/library1^directory/with/library2".