Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/darrenburns/posting
The modern API client that lives in your terminal.
https://github.com/darrenburns/posting
automation cli developer-tools http python rest rest-api rest-client ssh terminal textual tui
Last synced: 4 days ago
JSON representation
The modern API client that lives in your terminal.
- Host: GitHub
- URL: https://github.com/darrenburns/posting
- Owner: darrenburns
- License: apache-2.0
- Created: 2024-05-26T21:46:20.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-11-28T18:59:46.000Z (15 days ago)
- Last Synced: 2024-12-02T09:05:34.641Z (12 days ago)
- Topics: automation, cli, developer-tools, http, python, rest, rest-api, rest-client, ssh, terminal, textual, tui
- Language: Python
- Homepage:
- Size: 11.4 MB
- Stars: 6,204
- Watchers: 19
- Forks: 96
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
- awesome-github-repos - darrenburns/posting - The modern API client that lives in your terminal. (Python)
- awesome-integration - posting (⭐6.2k) - The modern API client that lives in your terminal. (Projects / API Testing)
- awesome-api-clients - posting - The modern API client that lives in your terminal (CLI)
- awesome-tuis - posting
README
# Posting
**A powerful HTTP client that lives in your terminal.**
Posting is an HTTP client, not unlike Postman and Insomnia. As a TUI application, it can be used over SSH and enables efficient keyboard-centric workflows. Your requests are stored locally in simple YAML files, so they're easy to read and version control.
Some notable features include:
- "jump mode" navigation
- environments/variables
- autocompletion
- syntax highlighting using tree-sitter
- Vim keys
- customizable keybindings
- user-defined themes
- run Python code before and after requests
- extensive configuration
- "open in $EDITOR"
- import curl commands by pasting them into the URL bar
- import OpenAPI specs
- a command palette for quickly accessing functionalityVisit the [website](https://posting.sh) for more information, the roadmap, and the user guide.
## Installation
Posting can be installed via [uv](https://docs.astral.sh/uv/getting-started/installation/) on MacOS, Linux, and Windows.
`uv` is a single Rust binary that you can use to install Python apps. It's significantly faster than alternative tools, and will get you up and running with Posting in seconds.
You don't even need to worry about installing Python yourself - `uv` will manage everything for you.
```bash
# quick install on MacOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh# install Posting (will also quickly install Python 3.12 if needed)
uv tool install --python 3.12 posting
````uv` can also be installed via Homebrew, Cargo, Winget, pipx, and more. See the [installation guide](https://docs.astral.sh/uv/getting-started/installation/) for more information.
Now you can run Posting via the command line:
```bash
posting
````uv` also makes it easy to install additional Python packages into your Posting environment, which you can then use in your pre-request/post-response scripts.
### Prefer `pipx`?
If you'd prefer to use `pipx`, that works too: `pipx install posting`.
Note that Python 3.13 is not currently supported.
## Learn More
Learn more about Posting at [https://posting.sh](https://posting.sh).
Posting was built with [Textual](https://github.com/textualize/textual).