| Crates.io | ww |
| lib.rs | ww |
| version | 1.0.0 |
| created_at | 2025-08-22 00:10:12.545752+00 |
| updated_at | 2025-08-22 00:10:12.545752+00 |
| description | A Doppler-like secret manager built on ScyllaDB, with a background daemon and a CLI for injecting environment variables into processes. |
| homepage | |
| repository | https://github.com/Akzestia/cql-lsp |
| max_upload_size | |
| id | 1805685 |
| size | 76,234 |
ww is a Doppler‑like secret manager built on ScyllaDB. It runs a background daemon that talks to Scylla and exposes project secrets over a local Unix socket. The companion CLI can inject environment variables into commands, download them in multiple formats, or update individual keys.
map<text,text> column)run, secrets, set-env, client~/.config/ww/config.toml).env, JSON, or YAML0600ww serve --node 127.0.0.1:9042 --user cassandra --pass cassandra
cd /path/to/repo
ww client setup my_project
ww set-env --name API_KEY --val abc123
ww node app.js
USAGE:
ww <COMMAND>
COMMANDS:
serve Start the daemon server
run Run a command with env vars injected
secrets Download or read secrets
set-env Upsert a single secret
client Manage global client config
Show current project resolution:
ww client which
Download secrets to .env file:
ww secrets download --format env --output .env
Fetch a single secret:
ww secrets get --name API_KEY --plain
Run any command, injecting resolved project secrets:
ww npm run dev
Location: ~/.config/ww/config.toml
default_project = "demo_project"
[[paths]]
dir = "/abs/path/to/repo"
project = "my_project"
Resolution order:
--project flag (explicit)WW_PROJECT environment variabledefault_projectThe daemon speaks a simple line protocol over a Unix socket:
QUERY_PROJECTS:<project>\n → KEY=VALUE\n...ENSURE_PROJECT:<project>\n → OK\n or ERROR:...SET_ENV:<project>:<key>=<value>\n → OK\n or ERROR:...Socket path defaults to /tmp/ww.sock.
0600 (owner read/write only)--plain only when piping into secure sinkscargo build --release
cargo test
cargo install --path .
Licensed under MIT.