SOF is a Solana-focused Rust workspace for low-latency data ingest and transaction execution.
It is split into three user-facing crates:
sof: observer/runtime crate for shred ingest, relay/cache, dataset reconstruction, plugin and runtime-extension events, fork/reorg tracking, and local commitment tagging without RPC dependencysof-tx: transaction SDK for building, signing, and submitting Solana transactions through RPC, direct leader routing, hybrid fallback, and optional kernel-bypass transportssof-gossip-tuning: typed gossip and ingest tuning presets for hosts embeddingsof
- Low-latency shred ingest and dataset reconstruction
- Local
processed/confirmed/finalizedtransaction tagging - Plugin hooks and runtime extensions for downstream logic
- Replayable derived-state feed for restart-safe stateful services
- First-class
sof-txadapters for live plugin and replayable derived-state control-plane inputs - Flow-safety policy evaluation for stale or degraded tx-control-plane state
- Optional gossip bootstrap and external kernel-bypass ingress
- Transaction submission with RPC, direct, hybrid, and kernel-bypass paths
- Typed gossip and ingest tuning presets for embedded SOF hosts
crates/sof-observer: published assofcrates/sof-tx: published assof-txcrates/sof-gossip-tuning: typed host tuning presets for gossip bootstrap and ingestdocs/architecture: ADRs, ARDs, and framework/runtime contractsdocs/operations: deployment and tuning docsscripts: local tooling and helper scripts
- Rust stable
cargo-makefor the full contributor gate
Install cargo-make if needed:
cargo install cargo-makeObserver/runtime crate:
cargo add sofTransaction SDK:
cargo add sof-txTyped host tuning presets:
cargo add sof-gossip-tuningFeature examples:
sof = { version = "0.7.0", features = ["gossip-bootstrap"] }
sof-tx = { version = "0.7.0", features = ["sof-adapters"] }Kernel-bypass integrations:
sofsupports external ingress APIs through--features kernel-bypasssof-txsupports custom direct transport adapters through--features kernel-bypass
Run the observer runtime example:
cargo run --release -p sof --example observer_runtimeRun the observer with gossip bootstrap:
cargo run --release -p sof --example observer_runtime --features gossip-bootstrapRun the transaction SDK tests:
cargo test -p sof-txRun the derived-state service example:
cargo run --release -p sof --example derived_state_slot_mirrorRun the full contributor gate:
cargo make ci- Observer/runtime setup:
crates/sof-observer/README.md - Transaction SDK setup:
crates/sof-tx/README.md - Typed gossip tuning setup:
crates/sof-gossip-tuning/README.md - Docs entry point:
docs/README.md - Contribution guide:
CONTRIBUTING.md
sof is not observer-only in gossip mode. By default it can also relay shreds and serve bounded repair responses.
To keep ingest/processing but reduce outward network activity:
SOF_UDP_RELAY_ENABLED=falseSOF_REPAIR_ENABLED=false
- Docs home:
docs/README.md - Architecture index:
docs/architecture/README.md - Operations index:
docs/operations/README.md - Runtime bootstrap modes:
docs/architecture/runtime-bootstrap-modes.md - Plugin hook model:
docs/architecture/framework-plugin-hooks.md - Runtime extension model:
docs/architecture/runtime-extension-hooks.md - Derived-state feed contract:
docs/architecture/derived-state-feed-contract.md - Transaction SDK ADR:
docs/architecture/adr/0006-transaction-sdk-and-dual-submit-routing.md
- CI workflow:
.github/workflows/ci.yml - Release workflow:
.github/workflows/release-crates.yml