Skip to main content
Open source · Go · single binary · zero dependencies

Plain text API tests.
No magic.

hitspec is a file-based HTTP API testing tool. Write tests in plain-text .http files that look like actual HTTP requests. Run them with 26 assertion operators, capture values, chain requests, stress-test, and mock APIs — all from one binary. No SDK. No GUI. No JavaScript.

$brew install —cask abdul-hamid-achik/tap/hitspec
api.http
26
Assertion operators
17
Built-in functions
8
Auth types
1
Binary, zero runtime deps
Why hitspec

Everything Postman does. In a text file.

Tests are readable .http files — no binary collections, no JSON blobs, no GUI-only workflows. Diffs are meaningful, code review works naturally, and your whole API test suite lives next to your code in git.

See it in action

A Postman-class client, in your terminal

hitspec studio opens a keyboard-first workspace: a file tree, a syntax-highlighted source editor you can save inline, a tabbed response viewer (Body / Headers / Assertions / Timing / Captures), a command palette, an environment switcher, and dedicated screens for stress, mock, contract, record, and history. Everything the REST —api-only server does, driven by one in-process manager.

Install

Running in under a minute

One binary, no runtime dependencies. Pick whichever install path you prefer.

Then write a test and run it:

How it compares

hitspec vs. the usual suspects

A full test framework on top of plain HTTP requests — without a GUI, collections export, or JavaScript.

CapabilityhitspecPostman / newmanREST ClientHurlk6
Plain-text, git-friendly files
Assertions + captures + dependencies
Built-in stress / load testing
Mock server from test files
Database assertions
Interactive terminal client (TUI)
No JavaScript / SDK required
Single binary, zero runtime deps
FAQ

Frequently asked questions

Everything you need to decide whether hitspec is the right API testing tool for your team.

hitspec is an open-source, file-based HTTP API testing tool. You write API tests as plain-text .http files that look like real HTTP requests, and hitspec executes them, evaluates assertions, captures values for chaining, and produces CI-friendly output. There is no SDK, no GUI, and no JavaScript — just text files you can read, diff, and check into git.
Yes. hitspec covers the same ground — requests, environments, auth, assertions, and an interactive client (hitspec studio) — but stores everything in version-controllable plain text. There are no binary collections to export, no GUI-only workflows, and tests live next to your code so code review works naturally. See the migrating from Postman guide.
hitspec uses .http (or .hitspec) files. The .http format is compatible with the REST Client VS Code extension and other HTTP file tools, so you get syntax highlighting for free. hitspec adds assertion blocks (>>> / <<<), captures (>>>capture), request dependencies (@depends), and metadata directives on top. See the file format reference.
Yes. Built-in stress testing is available with the —stress flag and inside the studio stress screen. You can configure request rate, virtual users, ramp-up, and pass/fail thresholds, and export metrics to Prometheus or Datadog. No separate load-testing tool is required. See the stress testing guide.
Like Hurl, hitspec uses plain-text, no-JavaScript test files. Unlike Hurl, hitspec adds a built-in mock server, database assertions, an interactive terminal client, and import/export to curl, Postman, Insomnia, and OpenAPI. Like k6, hitspec has built-in load testing — but with a simpler, HTTP-file syntax instead of JavaScript scripting. See the comparison table above.
Yes. hitspec is MIT-licensed and developed in the open on GitHub. You can install it via Homebrew, go install, or a pre-built binary from the releases page.
Yes. hitspec has an official GitHub Action, emits JUnit XML, TAP, JSON, and HTML output, respects environment variables, and returns exit codes that map to test outcomes. See the CI/CD guide and GitHub Actions integration.
Yes. Use a >>>db block to run SQL against PostgreSQL, MySQL, or SQLite and assert on the results after an HTTP request. This is ideal for verifying side effects. See database assertions.

Write your first API test in under a minute

No SDK. No GUI. No JavaScript. Just plain-text .http files you can read, diff, and check into git.