A user-space CRDT filesystem
Rust 89%
10%
Shell <1%

README.md

subtext #

Rust FSKit backend with a toy reverse filesystem (src/reverse.rs): files are stored bytewise-reversed on disk, but read normally.

The active backend is picked at compile time (src/backend/):

  • default → real FSKit mount via fskit_rs::mount.
  • --features dev → socket-only daemon on 127.0.0.1:$SUBTEXT_DEV_PORT (default 8080); no FSKit, no mount(8).

Prereqs: stable Rust, protoc on PATH (e.g. brew install protobuf).

cargo run --features dev                  # start the daemon
cargo run --bin fsclient -- smoke         # end-to-end round-trip
cargo run --bin fsclient -- put a.txt --content hi
cargo run --bin fsclient -- ls
cargo run --bin fsclient -- cat a.txt

fskit-rs is vendored in vendor/fskit-rs (changelog there if you re-bootstrap from the registry).