Sendra 0.1.0: the first tagged release
Sendra 0.1.0 is out: the first tagged release, and the first time you can install it instead of building it from source.
What "0.1.0" means hereโ
Nothing in this release is new relative to what's been in the repo. It's
the same request/collection model, CLI, and TUI introduced
and described in depth in the last two
posts. What changes is that it's now built, checksummed, and published
under a version number, with prebuilt binaries and package-manager entries
instead of a git clone + cargo build.
What's in the boxโ
- Requests and collections as plain YAML, with method, URL, headers, and a
body as
body,json,body_file,form, ormultipart, withauth: bearer/basic/api_key. sendra runandsendra testsend a request or collection from the shell, or run it againstassertions:and fail the build on a miss.testsupports--junitfor CI report output.- Assertions on status, headers, and body, including JSON-path checks
and an operator sub-language (
greater_than,matches,not:, and more). - Capture and chaining pull a value out of one response (JSON path, header, or status code) and substitute it into a later request in the same run.
- Environments and variables use
.sendra/environments/*.yaml, resolved via--env, with{{variable}}and${OS_VAR}substitution. - Config, layered uses
.sendra/config.yamlfor default headers, timeout, redirects, TLS, proxy, and cookie-jar settings, resolved project-over-global, overridable per-invocation with flags like-H,--var,--insecure,--proxy. - Scripting uses
pre_request/post_requesthooks in an embedded scripting language (Rhai), with no external runtime to install. - OAuth supports an
authorization_codelogin flow for requests that need a browser-based token first. sendra import curl,sendra init, andsendra schemaconvert a curl command into a request file, scaffold a new.sendra/project, and emit JSON Schemas for editor tooling.- The TUI (
sendra tui, or a baresendra) is the full-screen terminal app covered in the last post, built on the same core as the CLI. - One binary.
sendra-cliandsendra-tuibuild into a singlesendrabinary, so installing it gets you both.
Install itโ
Shell:
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/sendra-lab/Sendra/releases/latest/download/sendra-cli-installer.sh | sh
PowerShell:
powershell -ExecutionPolicy Bypass -c "irm https://github.com/sendra-lab/Sendra/releases/latest/download/sendra-cli-installer.ps1 | iex"
npm:
npm install @sendra-lab/sendra
pnpm:
pnpm add @sendra-lab/sendra
Bun:
bun add @sendra-lab/sendra
Homebrew:
brew install sendra-lab/tap/sendra-cli
Cargo:
cargo install sendra-cli
Or download a prebuilt binary directly from the v0.1.0 release page, which also has checksums for every artifact.
Once it's on your PATH:
cat > get-request.yaml <<'EOF'
method: GET
url: https://httpbin.org/get
EOF
sendra run get-request.yaml
From there, the docs cover the full request/collection schema, every CLI flag, and the TUI's keybinding reference.
