Designed around Rust,
not just written in it
BrewFS uses Rust to organize concurrent FUSE requests, VFS operations, metadata clients, object IO, buffer lifecycles, Chunk / Block / Slice layout, compaction, and GC.
Rust for concurrent agent IO
Multi-agent workloads create many concurrent file operations: reads, writes, stats, directory scans, log appends, artifact updates, and task-state changes.
BrewFS uses Rust to organize these paths with explicit ownership, async IO, and clear type boundaries across FUSE, VFS, metadata, and object storage layers.
Concurrent FUSE requests
Async object IO
Type-safe Chunk / Block / Slice
Metadata backend isolation
Predictable buffer lifecycle
Agent workspace friendly
Why Rust for a filesystem
Memory safety for long-running daemons
A filesystem daemon runs for a long time and handles many concurrent requests. Rust's memory-safety model is a strong fit for this type of systems software.
Predictable runtime for IO-heavy workloads
Storage systems need predictable resource behavior. Rust's no-GC runtime model is well suited for IO-heavy data paths.
Ownership for buffers and caches
Buffers, slices, cache entries, and object blocks have complex lifecycles. Rust's ownership model makes these boundaries explicit.
Strong types for storage layers
Chunk, Block, Page, and Slice concepts are represented with strong type boundaries to reduce accidental layer mixing.
Async pipeline for object IO
Object storage reads, writes, prefetching, compaction, and GC are naturally asynchronous. BrewFS uses Rust async patterns to structure these operations.
JuiceFS is production-first.
BrewFS is Rust-first.
JuiceFS provides a mature cloud-native filesystem product. BrewFS explores how a Rust-native, layer-aware filesystem can better serve agent-style RandRW workloads and developer-controlled storage infrastructure.