chore: updated README.md 46bb4514
Steve Simkins · 2026-08-08 00:59 1 file(s) · +25 −21
README.md +25 −21
2 2
3 3
![cover](https://files.stevedylan.dev/cielago-demo.jpg)
4 4
5 -
A vim-style TUI for building and sending HTTP requests, organized into
6 -
collections you can import straight from an OpenAPI spec.
5 +
Like Postman but it actually works. Terminal native HTTP request builder with OpenAPI support.
7 6
8 7
## Features
9 8
10 -
- **OpenAPI 3.x import** — turn a spec (file or URL) into a collection with
11 -
  requests, params, example bodies, servers, and docs prefilled.
12 -
- **Ad-hoc collections** — no spec needed; paste a full URL and it's split into
13 -
  server, path, and query params for you.
14 -
- **Vim-style TUI** — three panes (requests / editor / response), `j`/`k`
15 -
  navigation, `:` command line, `/` incremental search.
16 -
- **Variables** — `{{name}}` from the collection, plus dynamic ones like
17 -
  `{{uuid}}`, `{{timestamp}}`, `{{randomInt(1,100)}}`.
18 -
- **Auth per collection** — a fixed bearer token, an API key in a header of
19 -
  your choice, or the OAuth2 client-credentials flow (tokens cached in memory
20 -
  only). Press `A` to configure.
21 -
- **Secrets from your shell** — any secret field (bearer token, API key,
22 -
  OAuth client secret) can be a `$(…)` command, resolved at send time, e.g.
23 -
  `$(op read "op://vault/item/field")`.
9 +
- **OpenAPI 3.x import** — turn a spec (file or URL) into a collection with requests, params, example bodies, servers, and docs prefilled.
10 +
- **Ad-hoc collections** — no spec needed; paste a full URL and it's split into server, path, and query params for you.
11 +
- **Vim-style TUI** — three panes (requests / editor / response), `j`/`k` navigation, `:` command line, `/` incremental search.
12 +
- **Variables** — `{{name}}` from the collection, plus dynamic ones like `{{uuid}}`, `{{timestamp}}`, `{{randomInt(1,100)}}`.
13 +
- **Auth per collection** — a fixed bearer token, an API key in a header of your choice, or the OAuth2 client-credentials flow (tokens cached in memory only). Press `A` to configure.
14 +
- **Secrets from your shell** — any secret field (bearer token, API key, OAuth client secret) can be a `$(…)` command, resolved at send time, e.g. `$(op read "op://vault/item/field")`.
24 15
- **Server switcher** — swap base URLs so requests stay portable across envs.
25 16
- **Syntax highlighting** — JSON and XML in both request bodies and responses.
26 17
- **Plain JSON storage** — collections live in `~/.config/cielago/collections/`.
27 18
28 19
## Installation
29 20
21 +
### Homebrew
22 +
23 +
```sh
24 +
brew install stevedylandev/tap/cielago
25 +
```
26 +
27 +
### Prebuilt binaries
28 +
29 +
Grab a binary for your platform from the [releases page](https://github.com/stevedylandev/cielago/releases), or run the install script:
30 +
31 +
```sh
32 +
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/stevedylandev/cielago/releases/latest/download/cielago-installer.sh | sh
33 +
```
34 +
35 +
### From source
36 +
30 37
```sh
31 38
cargo install --path .
32 39
```
53 60
cielago path <name>              # print the collection's JSON path
54 61
```
55 62
56 -
`<name>` matches loosely — `Some API`, `some api`, and `some-api` all resolve to
57 -
the same collection.
63 +
`<name>` matches loosely — `Some API`, `some api`, and `some-api` all resolve to the same collection.
58 64
59 65
### Keys
60 66
70 76
| `?` | Help |
71 77
72 78
Sidebar: `n`/`r`/`d`/`y` new/rename/delete/duplicate, `t` cycle label source.
73 -
Tables: `space` toggle row, `i` edit, `a` add, `d` delete, `m` cycle method,
74 -
`p` edit URL. Body/response: `i` edit inline, `e` open in `$EDITOR`,
75 -
`j`/`k`/`d`/`u`/`g`/`G` scroll.
79 +
Tables: `space` toggle row, `i` edit, `a` add, `d` delete, `m` cycle method, `p` edit URL. Body/response: `i` edit inline, `e` open in `$EDITOR`, `j`/`k`/`d`/`u`/`g`/`G` scroll.
76 80
77 81
Press `?` in the TUI for the full list.
78 82