Are you an LLM? Read llms.txt for a summary of the docs, or llms-full.txt for the full context.
Skip to content

Getting started

oxgraph is a storage-agnostic, zero-copy-friendly graph and hypergraph topology substrate for Rust.

Topology here. Meaning elsewhere. Storage anywhere.

The core is no_std and the substrate is unsafe-free. The pipeline it is built around is bytes → validate → view → traverse: you point a view at a byte slice, it validates the layout, and you walk the graph. No parse step, no heap graph rebuilt from the bytes, no copy of the edges.

Install

Depend on the umbrella crate and turn on the features you need. Its default feature set is empty, so a feature is the only thing that pulls a layer in.

cargo add oxgraph --features csr,algo-std

You can also depend on the individual crates directly if you want a tighter dependency graph.

What you reach for, by task

You want toReach for
Expose your own storage as a graph or hypergraphthe topology / graph / hyper traits
Borrow a CSR or bipartite-CSR layout over slicesoxgraph-csr, oxgraph-hyper-bcsr
Open a validated snapshot and traverse it without rebuildingoxgraph-snapshot plus a layout
Run BFS or PageRank at a no_std, alloc, or std tieroxgraph-algo
Attach Arrow-backed named propertiesoxgraph-property
Run an embedded database or a Postgres engineoxgraph-db, oxgraph-postgres

Every layer ships runnable examples under its crate's examples/ directory (cargo run --example <name> -p <crate>).

Next

Status

Pre-1.0 and still changing. The traits and crates are not stable yet. The snapshot byte format is an internal ABI candidate, not a stable interchange format — treat persisted snapshots as coupled to the crate version that wrote them. Licensed MIT.