7 unstable releases

Uses old Rust 2015

0.4.1 Dec 13, 2020
0.4.0 Jan 29, 2019
0.3.0 Sep 16, 2016
0.2.0 Jun 18, 2016
0.1.0 Nov 23, 2015

#2430 in Database interfaces

MIT license

3.5MB
80K SLoC

C 78K SLoC // 0.0% comments Rust 2.5K SLoC // 0.0% comments Shell 14 SLoC

ejdb.rs, high-level bindings for Embedded JSON Database engine

Unmaintained

I no longer have a capacity to maintain this project. Feel free to reach out if you want to continue its development and take its name on crates.io.


Build Status crates.io

Documentation

This library provides high-level bindings to EJDB, an Embedded JSON Database engine.

EJDB is a document-oriented NoSQL embedded database, very similar to MongoDB. It allows storing, querying and manipulation of collections of BSON documents. It has MongoDB-like query language, collection-level transactions and typed indices.

This library attempts to provide idiomatic and safe Rust bindings to EJDB. It exposes all main features of EJDB: databases, collections, queries, transactions, indices and metadata.

See crate documentation for usage examples.

Usage

Add a dependency in your Cargo.toml:

[dependencies]
ejdb = "0.4"

To build the library, you need to have cmake installaled along with gcc and clang.

Changelog

Version 0.4.0

  • Switched to manual compilation and linking of ejdb statically.

Version 0.3.0

  • Bumped the bson dependency version.

Version 0.2.0

  • Bumped versions of various dependencies.

Version 0.1.2

  • Improved bson! macro to support optional values.

Version 0.1.1

  • Made Database implement Send.

Version 0.1.0

  • Initial release.

License

This library is provided under MIT license.

Dependencies

~4.5–8MB
~148K SLoC