FAF has a Rust ecosystem now. Five crates on crates.io, one meta-crate to rule them all. Parse .faf files, stream context via Radio Protocol, inject into Axum servers, run MCP servers — all in Rust.
One Install
cargo add faf That gives you the full SDK — parse, validate, score, and compile .faf files.
Need more?
cargo add faf --features axum Need even more?
cargo add faf --features radio Feature flags. Pay for what you use. Zero deps when off.
The Ecosystem
240 tests across the ecosystem. All passing. ☑
⚡ Just Shipped: Axum Middleware
One line to inject FAF project context into any Axum server:
.layer(FafLayer::new()) Feature-gated behind axum. Your .faf is parsed once at startup,
shared via Arc. Per-request cost: one atomic increment. ~240 lines of strategically-placed code.
What You Can Build
🔍 Parse project DNA
Read any .faf file. Score it. Validate it. The same IANA-registered format used by 33,000+ projects.
📡 Stream context to every AI
Radio Protocol — broadcast your project context once, Claude + Grok + Gemini all receive it. Real-time WebSocket.
🔌 Run an MCP server
Serve .faf context over Model Context Protocol. Same spec, Rust performance.
📦 Compile to FAFb binary
32-byte header, CRC32 integrity, 11 section types. The binary format for edge deployment.
🦀 Axum middleware
Inject .faf context into every HTTP request. Tower Layer, Axum extractor, builder pattern.
🍺 Homebrew CLI
Pre-built binary, 569 tests. FAF Pro licensing. Compiles .faf to .fafb. brew install and go.
The Binary CLI
If you want the CLI rather than the library:
brew install Wolfe-Jam/faf/rust-faf-cli 569 tests. FAF Pro licensing. Compiles .faf to .fafb binary. Same key as the TypeScript CLI — one subscription unlocks everything.
Why Rust
FAF CLI started in TypeScript. 97 versions, 16,000+ downloads. Free forever.
But the industry is moving. xAI built Grok's inference stack on Rust. Anthropic's MCP servers are being rewritten in Rust. Cloudflare Workers run Rust at 300+ edge locations. CLI tools that used to take seconds now start in milliseconds.
When Grok needs your project context at inference speed, it won't wait for a Node process to spin up.
It needs bytes on the wire, now. That's faf-rust-sdk compiling to FAFb binary.
That's faf-radio-rust streaming over WebSocket. That's the edge.
cargo add faf is the starting line.
The Compiler Pipeline
.faf (YAML)
│
┌───────────────┼───────────────┐
│ │ │
▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐
│ Rust │ │ Zig │ │ TS │
│ SDK │ │ WASM │ │ CLI │
└────┬────┘ └────┬────┘ └────┬────┘
│ │ │
┌──────┴──────┐ │ │
│ │ │ │
▼ ▼ ▼ ▼
┌───────┐ ┌────────┐ ┌───────┐ ┌─────────┐
│ .fafb │ │ WASM │ │ WASM │ │ Node / │
│Binary │ │ 211KB │ │ 2.7KB │ │ Browser │
└───────┘ └────────┘ └───────┘ └─────────┘ Three compilers. Four outputs. One format. IANA-registered.
What's Next
Axum is shipped. The Rust ecosystem is growing. Here's what's on the radar:
no_stdembedded support — FAF on microcontrollers- Actix-web / Tonic (gRPC) middleware
faf!proc macro — compile-time .faf validation- More feature flags, same one-liner install
Links
- crates.io/crates/faf — Meta-crate
- crates.io/crates/faf-rust-sdk — SDK + Axum
- crates.io/crates/faf-radio-rust — Radio Protocol
- crates.io/crates/rust-faf-mcp — MCP server
- faf.one/rust — Rust CLI (Pro)
- faf.one/downloads — All packages, all registries
- The Axum Edition — Middleware deep-dive
