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
