Everything you need to get started with the Omnia Protocol — from cloning the repo to running a full node.
git clone https://github.com/Willow7737/omnia-protocol.git
cd omnia-protocol
cargo test --workspace
cargo bench --no-run# Build the node binary
cargo build --release -p omnia-node
# Run with default configuration
./target/release/omnia-node
# Run with custom data directory
./target/release/omnia-node --data-dir /path/to/data
# Enable live Ethereum settlement
cargo build --release -p omnia-node --features ethereum-live# Start 5-node testnet with monitoring
docker compose -f docker/docker-compose.yml up -d
# Start testnet variant
docker compose -f docker/docker-compose.testnet.yml up -d| Endpoint | Description |
|---|---|
| GET /health | Liveness probe: { status, node_id, uptime_seconds } |
| GET /readyz | Readiness probe: { status, peers, finalized_height } |
| GET /api/v1/node/info | Full node status |
| GET /api/v1/node/peers | Peer list |
| GET /metrics | Prometheus metrics |
| GET /v1/events/stream | SSE event stream |
| GET /v1/events/recent?limit=N | Recent events |
| Flag | Description |
|---|---|
| ethereum-live | Real Ethereum settlement with Alloy |
| celestia | Celestia DA integration |
| settlement-ffi | C-library FFI adapter |
| real_verification | Domain shard real verification |
Enable features with --features <flag> when building with Cargo.
| Variable | Description |
|---|---|
| NEXT_PUBLIC_OMNIA_API_URL | Primary node API endpoint |
| NEXT_PUBLIC_OMNIA_NODE_URLS | Comma-separated node URLs |
| NEXT_PUBLIC_POLL_INTERVAL_MS | Data polling interval |
| NEXT_PUBLIC_LIVE_MODE | Set to true for SSR + live data |
| Command | Description |
|---|---|
| cargo test --workspace | Run all 1,536 tests |
| cargo clippy -- -D warnings | Lint |
| cargo fmt --check | Check formatting |
| cargo bench | Run benchmarks |
| cargo bench --bench zk_benchmarks --features full | ZK benchmarks |