High-performance Rust SDK for FAF (Foundational AI-context Format) - optimized for inference workloads.
IANA Media Type: application/vnd.faf+yaml
[dependencies]
faf-sdk = "1.0"use faf_sdk::{parse, validate, compress, CompressionLevel};
fn main() -> Result<(), Box<dyn std::error::Error>> {
let content = r#"
faf_version: 2.5.0
ai_score: "85%"
project:
name: my-app
goal: Build something great
instant_context:
what_building: CLI tool
tech_stack: Rust, Python
key_files:
- src/main.rs
stack:
backend: Rust
"#;
// Parse
let faf = parse(content)?;
// Access
println!("Project: {}", faf.project_name());
println!("Stack: {:?}", faf.tech_stack());
println!("Score: {:?}", faf.score());
// Validate
let result = validate(&faf);
println!("Valid: {}, Score: {}%", result.valid, result.score);
// Compress for token optimization
let minimal = compress(&faf, CompressionLevel::Minimal);
Ok(())
}Designed for high-throughput inference:
use faf_sdk::parse;
// Parse in ~1ms
let faf = parse(content)?;
// Direct field access - no allocation
let name = faf.project_name();
let stack = faf.tech_stack();Optimize for context window constraints:
use faf_sdk::{compress, CompressionLevel};
// Level 1: ~150 tokens
let minimal = compress(&faf, CompressionLevel::Minimal);
// Level 2: ~400 tokens
let standard = compress(&faf, CompressionLevel::Standard);
// Level 3: ~800 tokens
let full = compress(&faf, CompressionLevel::Full);Check structure and completeness:
use faf_sdk::validate;
let result = validate(&faf);
if result.valid {
println!("Score: {}%", result.score);
} else {
println!("Errors: {:?}", result.errors);
}| Function | Description |
|---|---|
parse(content) |
Parse YAML string |
parse_file(path) |
Parse from file |
validate(&faf) |
Validate structure |
compress(&faf, level) |
Compress for tokens |
stringify(&faf) |
Convert back to YAML |
| Method | Returns | Description |
|---|---|---|
project_name() |
&str |
Project name |
goal() |
Option<&str> |
Project goal |
score() |
Option<u8> |
AI score (0-100) |
tech_stack() |
Option<&str> |
Technology stack |
what_building() |
Option<&str> |
What's being built |
key_files() |
&[String] |
Key file paths |
is_high_quality() |
bool |
Score >= 70% |
Optimized for inference workloads:
| Operation | Time |
|---|---|
| Parse | <1ms |
| Validate | <0.1ms |
| Compress | <0.1ms |
For native AI inference embedding:
- Zero-copy where possible
- No GC pauses
- Predictable latency
- Easy FFI to Python/C++
- Spec: github.com/Wolfe-Jam/faf
- Site: faf.one
- Python SDK: faf-python-sdk
MIT