This page is the contract for external users. It intentionally distinguishes between what is ready to evaluate now and what is still experimental or incomplete.
| Capability | Status | Notes |
|---|---|---|
| Concurrent graph storage and traversal APIs | Stable | Core graph engine is the strongest part of the repo. |
Embedded Database facade for Rust |
Stable | Best current entry point. |
| Graph algorithms in the workspace | Stable | Multiple algorithms are implemented and tested. |
| SQL read subset | Stable | SELECT, filtering, ordering, limit, COUNT, and GROUP BY subset are implemented. |
| Cypher read subset | Stable | MATCH-style reads, filters, ordering, limits, counts, and path traversal subset are implemented. |
| Gremlin traversal subset | Stable | g.V(), has, out/in/both, values, count, limit, and ordering subset are implemented. |
| Document store | Stable | Collection-based CRUD plus nested-field filtering in-process. |
| Resource monitor and internal query metrics primitives | Stable | Useful internally, but not yet a full operator-facing observability surface. |
| HNSW vector index | Experimental | Implemented and integrated, but still part of a broader evolving AI/vector story. |
| Live queries / async graph events | Experimental | Present in the embedded API, not yet part of a hardened ops surface. |
| HTTP router | Experimental | Router exists and is tested, but the repo does not ship a standalone server runtime. |
| Python and Node bindings | Experimental | Available in the workspace, but not yet the primary documented adoption path. |
| Incremental embeddings / inference | Experimental | Real code exists, but parts of the AI path still contain placeholder/evolving pieces. |
| Cluster / sharding / HA | Experimental | Present in the workspace, but not yet documented as production-ready operations. |
| Docker-first deployment story | Planned | Not the current entry path. |
| Production-grade operator controls (timeouts, admission control, slow-query tooling) | Planned | Internal primitives exist, external surface is still limited. |
BikoDB should currently be understood as supporting documented subsets, not full language compatibility.
Supported subset today includes:
SELECT ... FROM ...WHEREORDER BYLIMITCOUNT(*)GROUP BY- predicates such as
=,!=,>,<,>=,<=,LIKE,IN,BETWEEN
Important limitation:
- the parser contains broader work such as
INSERTandDELETE, - but the current
Database::query_sql()execution path is a read path, - so you should not treat SQL writes as a public, end-to-end supported query surface yet.
Supported subset today includes:
MATCHOPTIONAL MATCHWHERERETURNORDER BYLIMITcount(...)- variable-length path syntax for supported traversal cases
Important limitation:
- parser work exists for
CREATE,DELETE, andSET, - but the public
Database::query_cypher()path is currently a read-oriented execution path.
Supported subset today includes:
g.V()hasLabel(...)has(...)out(...),in(...),both(...)values(...)count()limit(...)order().by(...)
Important limitation:
- this is a traversal subset, not full Apache TinkerPop compatibility.
What exists today:
- graph nodes and edges,
- document collections,
- HNSW vector search,
- helper methods that bridge graph, documents, and vectors.
What you should not assume today:
- a single public transaction API spanning graph + document + vector state,
- documented conflict semantics across all models,
- versioned cross-model isolation guarantees.
See multi-model consistency for the current boundaries. See supported guarantees for the shortest summary of what is safe to claim publicly.
Useful internal pieces already exist:
ResourceMonitorfor counters and snapshots,AccessTrackerfor per-operator/query metrics,EXPLAINformatter in the optimizer.
But the repo does not yet present a complete operator-facing layer for:
- slow query reporting,
- query profiling,
- timeout/cancel controls,
- admission control and concurrency governance.
See operations & observability for the current operator-facing picture.
External users should know this up front:
- there is no official standalone BikoDB server binary at the repo root,
- there is no first-class Docker deployment flow in the repo,
- the best current starting point is still the embedded Rust API.