๐ฆ snm-fdbcli
A Modern Interactive CLI & Library for FoundationDB (Directory + Tuple Layer)

๐งฉ Built on the Official FoundationDB Rust Crate
This project is powered by the official FoundationDB Rust bindings:
foundationdb = { version = "0.10.0", features = ["embedded-fdb-include", "fdb-7_3"] }
snm-fdbcli is a powerful FoundationDB Directory/Tuple explorer, providing:
- โ๏ธ CLI commands (
dircreate,dirlist,pack,unpack,range,clearprefix) - โ๏ธ A REPL / interactive shell (
snm-fdbcli repl) - โ๏ธ High-level Rust APIs for directory management
- โ๏ธ Tuple pack/unpack helpers
- โ๏ธ Range queries, prefix queries, deletion
- โ๏ธ Dump entire subspaces
- โ๏ธ Works with any FoundationDB cluster (local or remote)
๐ Features
Directory Layer
- Create directories at any depth
- List subdirectories
- Open existing directories
Tuple Layer
- Pack
(a, 1, "demo")into FDB key - Unpack bytes back to tuple
- Automatic prefix-range generation
Data Operations
- Read range
- Query tuple ranges
- Delete prefix ranges
- Dump entire directories
๐ฅ Installation
Build the CLI
๐ง Configuration
Export your cluster file path:
If not set, Database::default() is used.
Interactive Shell
)
)
)
๐ฅ๏ธ CLI Usage
๐ REPL MODE
Commands:
init
seed <user>
show-user <user>
show-wallet <user>
logins <user>
orders <user>
dump-all
dircreate <path>
dirlist <path>
pack (tuple)
unpack <hex>
range <dir> (tuple)
clearprefix <dir> (tuple)
help
exit
๐ Tuple Pack / Unpack
snm-fdbcli> pack (user-1, 1)
snm-fdbcli> unpack 01677573...
๐ Range Queries
snm-fdbcli> range srotas/logins (user-1)
snm-fdbcli> clearprefix srotas/logins (user-1)
๐งช Tests
Unit tests (no DB required)
Full end-to-end (requires running FDB)
๐ Library API Examples
let db = connect_db?;
let dir = dir_create.await?;
let key = tuple_pack_from_string?;
Made with โค๏ธ by the [Srotas Space] (https://srotas.space/open-source)
๐ฅ Contributors
- Snm Maurya - Creator & Lead Developer LinkedIn
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.