← Back to articles

Software Review: Posting

After my previous review of Lazygit, I’m continuing my journey into terminal-based GUI applications for developers. Today, let’s talk about Posting, an HTTP API client similar to Postman or Insomnia — both of which I’ve used in the past. This review covers version 2.3.0.

Nice overview from the Posting homepage

First Impressions:

Installable as a uv tool: You can install Posting using uv tool install posting. (Give uv a try if you want a really fast Python package manager!)

Traditional layout: By default, Posting has a familiar layout: requests on top, responses at the bottom, and a list of collections on the left. You can change this layout using “Commands” (press C-p to access). Multiple themes with different color schemes are provided.

Navigation via Jump mode: Remember Vimperator? Posting has a similar feature called Jump mode. After pressing Ctrl+o, you’ll see letters appear on all UI sections that can be accessed. Just press the corresponding key to navigate. Oh, and if you’re not in the mood for shortcuts, the mouse works fine too! 🙂

Collections are saved as plain text: Collections are saved into ~/.local/share/posting/default/ in a plain text format. You can easily edit them with a text editor, and the format is so simple that it can be easily versioned, shared with your team, and edited collaboratively (bye bye JSON!). Requests can be grouped, and these groups correspond to directories on the filesystem.

Environment variables support: You can use environment variables in the URL or body of your requests. Posting can directly read environment variables if started with the appropriate option:

POSTING_USE_HOST_ENVIRONMENT=true MYENV=value posting

Alternatively, you can use a .env file with:

posting --env myenv.env

Trace panel with time profiling: There’s a trace panel that shows a time profile of each HTTP request. Useful for analyzing request performance!

Some Flaws to Consider:

Unfortunately, Posting still has a few flaws:

Small latency in the UI: There’s a minor but noticeable lag when interacting with the interface.

Unable to middle-click to paste (at least on Linux + Xorg): This could be fixed soon (see GitHub issue #126). In the meantime, the alternative is to use Shift+Insert.

Saving Collections: You need to remember to press Ctrl+s to save edits to your collections. If you exit the application using Ctrl+c (which is the recommended way), you’ll lose all unsaved modifications. 😱

Final Thoughts

Despite these minor shortcomings, Posting has a lot of potential, and it’s worth giving it a try for a few weeks. 😉 Let me know if you end up trying it out!

Any thoughts or questions? I’d love to hear your experiences with Posting or any other terminal-based API tools you’ve tried!