HN
Today

Show HN: Explain Curl Commands

A new CLI tool, explain-my-curl, offers a local-first way to dissect curl commands, providing step-by-step insights into DNS, TLS, and HTTP interactions. This project appeals to the Hacker News crowd by offering transparency and deep technical understanding for network requests. It's a valuable utility for developers troubleshooting or learning the intricacies of web communication.

7
Score
0
Comments
#15
Highest Rank
4h
on Front Page
First Seen
Mar 3, 7:00 PM
Last Seen
Mar 3, 10:00 PM
Rank Over Time
20191520

The Lowdown

The new explain-my-curl project introduces a command-line interface and a terminal user interface (TUI) designed to demystify what a curl command actually does under the hood. It meticulously breaks down the lifecycle of a network request, from DNS resolution through TLS handshakes and HTTP exchanges, offering users an unprecedented level of visibility into these operations.

Key features of explain-my-curl include:

  • A robust CLI capable of parsing and explaining various curl inputs.
  • An interactive TUI for real-time exploration and diagnosis of command execution.
  • Detailed telemetry covering DNS, TCP connect times, TLS handshake duration, and time-to-first-byte.
  • Automatic secret redaction to ensure sensitive information isn't exposed in explanations or error messages.
  • Evidence labels like 'Observed', 'Inferred', and 'Estimated' to clearly indicate the source and reliability of protocol transparency data.
  • A transparent 'transparency contract' document outlining how data is handled and presented.
  • Convenient quick-start commands for immediate usage and a doctor mode for setup verification.
  • Automated release processes with GoReleaser, ensuring multi-platform binary availability and embedded build metadata.

This tool serves as an excellent resource for developers, network engineers, and anyone looking to gain a deeper, step-by-step understanding of how curl commands interact with the internet, providing critical debugging and educational insights into network protocols.