GitPedia

Curlie

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

From rs·Updated June 15, 2026·View on GitHub·

If you like the interface of [HTTPie](https://httpie.org) but miss the features of [curl](https://curl.haxx.se), curlie is what you are searching for. Curlie is a frontend to `curl` that adds the ease of use of `httpie`, without compromising on features and performance. All `curl` options are exposed with syntax sugar and output formatting inspired from `httpie`. The project is written primarily in Go, distributed under the MIT License license, first published in 2018. It has gained significant community traction with 3,669 stars and 114 forks on GitHub. Key topics include: api-client, cli, curl, developer-tools, go.

Latest release: v1.8.2curlie-v1.8.2
March 7, 2025View Changelog →

Curlie

If you like the interface of HTTPie but miss the features of curl, curlie is what you are searching for. Curlie is a frontend to curl that adds the ease of use of httpie, without compromising on features and performance. All curl options are exposed with syntax sugar and output formatting inspired from httpie.

Install

Using homebrew:

sh
brew install curlie

Using webi:

sh
# macOS / Linux curl -sS https://webinstall.dev/curlie | bash
pwsh
# Windows curl.exe -A "MS" https://webinstall.dev/curlie | powershell

Using eget:

sh
# Ubuntu/Debian eget rs/curlie -a deb --to=curlie.deb sudo dpkg -i curlie.deb

Using macports:

sh
sudo port install curlie

Using pkg:

sh
pkg install curlie

Using go:

sh
go install github.com/rs/curlie@latest

Using scoop:

sh
scoop install curlie

Using mise:

sh
mise use -g curlie@latest

Or download a binary package.

Usage

Synopsis:

sh
curlie [CURL_OPTIONS...] [METHOD] URL [ITEM [ITEM]]

Simple GET:

Simple GET request example

Custom method, headers and JSON data:

Custom PUT request with headers and JSON data example

When running interactively, curlie provides pretty-printed output for json. To force pretty-printed output, pass --pretty.

Build

Build with goreleaser to test that all platforms compile properly.

sh
goreleaser build --clean --snapshot

Or for your current platform only.

sh
goreleaser build --clean --snapshot --single-target

Differences with httpie

  • Like curl but unlike httpie, headers are written on stderr instead of stdout.
  • Output is not buffered, all the formatting is done on the fly so you can easily debug streamed data.
  • Use the --curl option to print executed curl command.

License

All source code is licensed under the MIT License.

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from rs/curlie via the GitHub API.Last fetched: 6/15/2026