Announcing Couchbase Mobile 3

In this major release, we further strengthen our support for edge computing by expanding our edge device platform support with the introduction of the C API for Couchbase Lite. The new C API enables developers to embed Couchbase Lite on a broad range of embedded platforms, opening new doors for innovative applications. In addition, we are introducing significant architectural enhancements that will make it simpler to configure and administer the platform. We’ve modularized the Sync Gateway configuration, made it “cluster-aware,” and now provide a secure RESTful API endpoint to simplify runtime administration. All of this, in addition to a number of security-related updates.

Key new features

C API Platform Support in Couchbase Lite

Couchbase Lite 3.0 introduces C API support, enabling developers to build applications in C that run on nearly any embedded platform. The C API makes it easy to build language bindings using Foreign Function Interface (FFI), which means that developers can embed Couchbase Lite to applications using a broad range of programming languages such Dart, Python, JavaScript, Rust, Go, and others. The C API is cross-platform and supports a broad range of operating systems for mobile, desktop, and custom embedded hardware. This game-changing new features allows developers to build cross-platform applications that run on a wide variety of hardware.

SQL++/ N1QL Query Language Support in Couchbase Lite

In Couchbase Lite 3.0, we have expanded the Query API to support SQL++/N1QL formatted query strings. This allows developers to submit string-based queries using familiar SQL syntax. Reuse the same SQL++/N1QL queries across Couchbase Server and Couchbase Lite, thereby reducing the effort required to develop, test, and optimize queries.

Kotlin Support in Couchbase Lite for Android

The new release of Couchbase Lite for Android offers a fully supported, out-of-the-box idiomatic API for Kotlin that will enable seamless integration with Android apps developed in Kotlin without the need for custom extensions. Kotlin is the preferred language of choice for developing Android apps, and Couchbase Lite’s support allows Kotlin developers to adopt common Kotlin patterns within their Android mobile apps.

Centralized Persistent Modular Configuration in Sync Gateway

Sync Gateway 3.0 provides a “cluster-aware” approach to configuring Sync Gateway nodes in a cluster. Users can now configure cluster-wide Sync Gateway databases, access control policies, inter-Sync Gateway replications, etc. via the admin REST endpoint. Configuration updates can be made in a modular fashion through the same REST endpoint. The ability to centrally update the database config in large clusters simplifies manageability and administration. Database changes made to a node are automatically applied to all nodes in a cluster or can be scoped to a subset of nodes.

Secure Remote Administration for Sync Gateway

Sync Gateway 3.0 introduces secure administration of a cluster through the Sync Gateway admin REST API that enforces authentication and role-based access control by default. With authentication support, the admin API can be securely accessed from external clients without the need for network infrastructure-based access control mechanisms (such as SSH tunneling or firewall rules). With this new feature users can securely manage Sync Gateway across distributed cloud environments from anywhere.

User-Defined Extended Attributes (XATTRs) in Sync Gateway

Sync Gateway 3.0 offers user-defined Extended Attributes (XATTRs) for Access Control Metadata. Prior to version 3.0, Sync Gateway access grant information had to be embedded within the body of each document. In the latest version of Sync Gateway, customers can now specify access grants in user-defined Extended Attributes (XATTRs) outside of the document body, which can be called using the sync function. Now Sync Gateway access rights can be stored, changed, and accessed in one place, improving efficiency and security.