| Crates.io | indradb-lib |
| lib.rs | indradb-lib |
| version | 5.0.0 |
| created_at | 2018-01-24 19:32:17.824664+00 |
| updated_at | 2025-08-16 14:17:28.48124+00 |
| description | A graph database library |
| homepage | https://indradb.github.io |
| repository | https://github.com/indradb/indradb |
| max_upload_size | |
| id | 48176 |
| size | 229,674 |
This is the IndraDB library. Most users can use the server, which provides higher-level methods for working with IndraDB databases. Linking directly against the library would be necessary if you want to make a new datastore implementation, or if you want to work at a lower-level than the server affords.
IndraDB stores graph data in datastores. Datastores are pluggable: there are a few built-in ones, but you can implement a new custom datastore.
To use the in-memory datastore, add this to your Cargo.toml's dependencies section:
indradb-lib = "*"
To use the rocksdb datastore, add this to your Cargo.toml's dependencies section:
indradb-lib = { version = "*", features = ["rocksdb-datastore"] }
To implement a custom datastore, you need to implement the Datastore trait. See the in-memory datastore for a simpler example implementation. To help you get off the ground faster, there is a standard test suite that can execute against any datastore and check for common bugs and regressions. See the in-memory datastore tests for an implementation of it.