The workshop · Edition No. 36 · 30 Sep 2026

Orange-OpenSource/hurl

Runs and tests HTTP requests written in a plain text file, with captures and assertions.

← The workshopRead the whole edition →

19228 stars · Apache-2.0 — read from /blob/master/LICENSE, plain body, appendix filled in as 'Copyright 2023 Hurl' rather than Orange · 8.0.1 published 2026-04-29, confirmed by crates.io; the release TITLE embeds 2026-04-28, a one-day self-contradiction · Track this in Scout

Runs and tests HTTP requests written in a plain text file, with captures and assertions.

▶Repo detailsthe review · specs · pros & cons · install

What it is

A command-line program at 19,228 stars, published by Orange, that reads a file of requests, carries values from one answer into the next request, and asserts things about headers and content. It works as a way to fetch data and as a test runner for an API — an API being the machine-readable doorway a service offers to other programs.

What it is good for. Anyone testing a web service who wants those tests stored as readable text files in the same repository as the code. It suits a small team with no dedicated tester: the file is short enough to write in an afternoon and plain enough that the next person can read it.

Stars19228
LicenceApache-2.0 — read from /blob/master/LICENSE, plain body, appendix filled in as 'Copyright 2023 Hurl' rather than Orange
Latest8.0.1 published 2026-04-29, confirmed by crates.io; the release TITLE embeds 2026-04-28, a one-day self-contradiction
Good
  • Apache-2.0, read from the licence file and completely plain.
  • The tests are one text file. They can be compared between versions, reviewed, and copied between projects, which is not true of tests kept inside an application's own database.
  • Packaging is unusually careful for a project this size: releases are cut automatically with a verified signature and nineteen ready-made downloads for different systems.
Watch for
  • The file format is a small language of its own, with its own way of writing checks and carrying values forward. There is no window to click in, so somebody has to learn it.
  • The newest release, 8.0.1, is dated 29 April 2026 — five months before this edition — while code is still going in, most recently on 26 September 2026. Anyone following releases only is five months behind.
  • Building from source is the awkward route: it needs the Rust toolchain plus the development files for libssl, libcurl and libxml2. The ready-made downloads avoid all of that.
  • Because the format captures values out of answers, passwords and access tokens tend to end up written into files that are then committed alongside the code. The tool does not solve that.
Similar repositories
  • usebruno/bruno

    The closest match in spirit, storing requests as plain files in your own repository, but it is a desktop application first and its README points at paid versions.

    Track this in Scout
  • grafana/k6

    Also scripts and checks web traffic from a command line, but built for load testing with JavaScript test files, and AGPL-3.0 is a much heavier licence.

    Track this in Scout
  • httpie/cli

    Sends single web requests from a terminal in a friendly readable form, but with no test file format, no chaining and no checks — and it has taken no code since December 2024.

    Track this in Scout
Install
brew install hurl
choco install hurl
Screenshots
Orange-OpenSource/hurl: Screenshot 1Orange-OpenSource/hurl: Screenshot 2Orange-OpenSource/hurl: Screenshot 3

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.