Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Embedded Databases
  3. EJDB2

EJDB2

What it is

EJDB2 is a free, MIT-licensed JSON database engine written as a C library and designed to be embedded in applications. It stores data in a single file using the IOWOW persistent key/value storage engine. Its JQL query language supports filtering, data changes, collection joins, projections, sorting, indexes, and options to skip, limit, or count results. The project also lists online backup support.

For network access, EJDB2’s standalone jbs server provides HTTP REST and WebSocket endpoints. The server supports TLS 1.2, can require an access token in the X-Access-Token HTTP header, and offers a write-ahead-log option for durability. The project lists macOS, iOS, Linux, and Windows support, along with self-hosted use, and provides a C11 API. The repository links several language bindings and tags C, Dart, Flutter, Java, Node.js, React Native, and Swift. Following a 2025 cleanup, the changelog says only Java and Node.js bindings are maintained. The repository’s issues tracker is disabled; contributions and pull requests are welcomed.

For and against

For

  • Free under the MIT License
  • Single-file database storage
  • JQL supports joins and indexes
  • Online backup support is listed
  • Server supports TLS 1.2

Against

  • Only Java and Node.js bindings are maintained
  • Repository issues tracker is disabled

The verdict

EJDB2 offers an embeddable database engine with broad query features and an optional network server. Developers should account for the project’s current binding maintenance and disabled issues tracker when considering support needs.

Who it suits

EJDB2 suits developers looking for an embeddable JSON database with a C API and a single-file storage design. Its network server may also suit projects needing REST or WebSocket access.

Plans and prices

EJDB2

Free

MIT-licensed open-source database engine

Every plan, in full

On the record

API
EJDB2 provides a C11 API.github.com · read 8 Oct 2026
Authentication
The network API example starts the server with an access token and sends it in the X-Access-Token request header.github.com · read 8 Oct 2026
Backups
The project lists support for online backups.github.com · read 8 Oct 2026
Bindings
The repository links to native language bindings and tags the project with C, Dart, Flutter, Java, Node.js, React Native, and Swift.github.com · read 8 Oct 2026
Durability
The jbs server offers a write-ahead-log option for data durability.github.com · read 4 Oct 2026
Joins
The project supports joins between collections.github.com · read 8 Oct 2026
License
The repository describes EJDB2 as published under the MIT license.github.com · read 8 Oct 2026
Maintained bindings
The project changelog says that after its 2025 cleanup, only the Java and Node.js bindings are maintained.github.com · read 4 Oct 2026
Network access
The project provides HTTP REST and WebSocket endpoints through IWNET.github.com · read 8 Oct 2026
Product
EJDB2 is an embeddable JSON database engine written as a C library.github.com · read 8 Oct 2026
Query capabilities
JQL supports filtering, data modification, projections, sorting, and query options such as skip, limit, and count.github.com · read 8 Oct 2026
Query features
JQL supports collection joins, projections, sorting, indexes, and query options such as skip, limit, and count.github.com · read 4 Oct 2026
Query language
Its JQL query language is inspired by XPath and Unix shell pipes and is designed for querying and updating JSON documents.github.com · read 8 Oct 2026
Security
The jbs server supports TLS 1.2 and can require an access token in the X-Access-Token HTTP header.github.com · read 4 Oct 2026
Storage
The project lists a single-file database powered by IOWOW, a persistent key/value storage engine.github.com · read 8 Oct 2026
Support
The project README says its issues tracker is disabled and welcomes contributions and pull requests.github.com · read 4 Oct 2026
Support and contributions
The repository says its issues tracker is disabled and welcomes contributions through pull requests.github.com · read 8 Oct 2026
Supported platforms
The README lists macOS, iOS, Linux, and Windows as supported platforms and says the core was tested on Linux, macOS, and FreeBSD.github.com · read 8 Oct 2026

The review

Overview

EJDB2 is a free, MIT-licensed document database for developers building software that needs local or self-hosted JSON storage. Its single-file design and broad JQL query operations make it a capable embedded option; the narrower set of maintained language bindings may make adoption harder for teams outside Java and Node.js.

Key features

EJDB2 is a C library backed by IOWOW, a persistent key/value engine, and stores its database in one file. That makes it a practical fit when storage should ship with an application instead of relying on a separate database service. Its C11 API gives systems developers a direct integration path, while other language users depend on bindings.

JQL provides a document-oriented alternative to SQL. It handles filtering and data modification, and supports collection joins, projections, sorting, indexes, and skip, limit, and count options. This is a strong range for an embedded JSON engine, though it is best suited to teams comfortable with a NoSQL query model.

The standalone jbs server adds HTTP REST and WebSocket access for applications that need to reach the database over a network. It supports TLS 1.2 and optional access-token checks through the X-Access-Token header. A write-ahead-log option supports durability, and online backups are supported. These features broaden deployment choices, while leaving database operation and hosting in the developer’s hands.

The repository links bindings for several languages, but after the 2025 cleanup only Java and Node.js bindings are maintained. That distinction matters: teams using other languages may need to maintain their own integration. The project welcomes pull requests, but its disabled issues tracker removes a familiar channel for questions and support.

Pricing

EJDB2 costs nothing under the MIT License. The free plan is the open-source database engine itself, with no paid tier or trial to weigh. The MIT license permits broad use, including commercial projects, but the project’s contribution-oriented support model may require teams to solve integration issues themselves.

Platforms

The project supports macOS, iOS, Linux, and Windows. EJDB2 is also categorized for API and self-hosted use, reflecting its library and standalone-server deployment options. Platform support does not imply equal binding maintenance across languages.

Who it's for

EJDB2 suits developers who want an embeddable JSON store, need more than basic key-value access, and are comfortable integrating a C library or using the maintained Java and Node.js bindings. It is less suitable for teams that require SQL, a managed service, maintained bindings for another language, or a conventional issue-tracker support channel.

Pros and cons

Pros

  • Single-file storage keeps the database close to the application and avoids a separate database service.
  • JQL combines joins, indexes, projections, sorting, and common query controls in a document-oriented interface.
  • The standalone server adds REST and WebSocket access, TLS 1.2, token checks, write-ahead logging, and online backups.
  • The MIT-licensed engine is free for use without a paid-plan decision.

Cons

  • Only Java and Node.js bindings are maintained, creating extra upkeep for teams using other languages.
  • The disabled issues tracker leaves contributors and users without that standard route for project questions.
  • As an embedded engine with a standalone server, EJDB2 requires developers to handle deployment and operations themselves.

Alternatives

For a broader embedded-database shortlist, see Embedded Databases.

  • Chroma is worth considering if you want an open-source codebase also used by its maker for Chroma Cloud, or need its broader platform coverage.
  • LadybugDB offers a free MIT-licensed option with pre-compiled binaries and wider listed platform coverage; consider it if those binaries matter to your deployment.
  • RocksDB is another free embedded library, written in C++ and dual-licensed under GPLv2 or Apache 2.0; pick it if that library and licensing fit your project better.
  • SQLite is a free embedded SQL engine with no separate server process; choose it when SQL is the requirement.
  • Accessibility Test Framework for Android is a free Android accessibility testing framework, rather than a database engine.
  • bbolt is a free open-source Go library and command-line utility with no paid plans.
  • ObjectBox has a free core database plan and a free trial, making it an option if that pricing structure suits your needs.
  • RxDB offers a free core with replication and realtime sync, plus default storages and a cap of 13 open collections; consider it if those capabilities match your application.

Verdict

Choose EJDB2 if you need a free, MIT-licensed embedded JSON database with a rich query language and optional network access, and can work within its C-centered integration model. Its combination of single-file storage, JQL, and server features is compelling for self-hosted applications. Look elsewhere if your team depends on maintained bindings beyond Java and Node.js or needs an active issue tracker for support.

Alternatives to EJDB2

Every alternative, ranked