gitmyhub

httpstat

Go ★ 7.2k updated 1y ago

It's like curl -v, with colours.

httpstat is a small command-line tool that makes an HTTP request and shows a color-coded breakdown of exactly where time was spent, DNS lookup, TCP connection, TLS negotiation, server wait, and content download.

Gosetup: easycomplexity 1/5

httpstat is a small command-line tool that shows you how long each stage of an HTTP request takes. When you load a web page or call an API, several things happen in sequence: your computer looks up the server's address, establishes a connection, negotiates security if the site uses HTTPS, sends your request, waits for a response, and then downloads the content. httpstat breaks that timeline into labeled segments and displays them with color coding so you can see at a glance where time is being spent.

It works like the standard curl command-line tool that developers use to make web requests, but adds the timing breakdown and color display on top. You run it by typing the tool name followed by a web address, and it handles the request while printing the timing summary.

The tool supports common request options: following redirects, changing the HTTP method (such as switching from GET to POST), adding custom request headers, sending a request body from text or a file, and saving the response to a file. It works on Windows, Linux, and BSD-based systems. For sites with self-signed certificates, you can skip certificate verification with a flag.

Installation requires the Go programming language toolchain. Once you have that, a single install command fetches and builds the tool. The project is largely feature-complete and not actively accepting new features, though bug reports are welcome.

Where it fits