finds.dev

rs/curlie

The power of curl, the ease of use of httpie.

View on GitHubHomepage ↗

★ 3,727GoMITupdated Dec 2025

// the take

Curlie is a thin Go wrapper around curl that gives it httpie-style ergonomics: short JSON syntax for headers/data, automatic JSON pretty-printing, and colorized output, while still passing through every curl flag. It's for people who like httpie's UX but need curl's protocol support, speed, or scripting compatibility underneath.

Because it shells out to the real curl binary rather than reimplementing HTTP in Go, it inherits curl's full feature set (protocols, TLS options, proxies, --data-binary, etc.) for free instead of lagging behind like most 'curl alternatives' do. Output isn't buffered, so streaming responses render incrementally instead of waiting for the full body like many pretty-printers. The --curl flag to print the equivalent curl invocation is a genuinely useful debugging/reproducibility feature when you need to hand a command to someone else or a CI script.

Hard runtime dependency on curl being installed and on PATH — this isn't a standalone HTTP client, so it inherits curl's version quirks across platforms (notably older curl builds on macOS/Windows) and any sandboxed or minimal container without curl needs an extra install step. The argument parser has to shadow and translate both curl's and httpie's option sets, which is an inherently fragile design: ambiguous flags between the two styles are a recurring source of GitHub issues and will keep surfacing as either tool evolves its CLI. It's a one-person maintenance model (rs) with infrequent releases, so new curl features or security-relevant flag additions take a while to get surfaced through curlie's wrapper layer.

We read the README, the directory tree and a key source file in October 2026. Nobody pays to be listed. How we judge →

// at a glance

Stars
3,727
Forks
119
Language
Go
License
MIT
Last commit
7 Dec 2025

// nearby

If curlie isn't quite it.

All repos →