Compare
Up to three tools. The table shows the data as-is, without picking a “best”.
| Field | Hurl | act | uv |
|---|---|---|---|
| Platforms | Universal | GitHub | Universal |
| Local support | Yes | Yes | Yes |
| Paid API | No | No | No |
| License | Apache-2.0 | MIT | MIT OR Apache-2.0 |
| Stars | 19271 | 72437 | 91076 |
| Last activity | October 17, 2026 | — | October 20, 2026 |
| Install complexity | Easy; API and CLI knowledge required | — | Easy on supported systems; Homebrew must already be installed for this command. Windows and standalone installation options are explained in the guide. |
| Category | Testing, DevOps | Testing, Git, DevOps | Workflow, DevOps |
| Best use | Best for a developer or small team that wants repeatable API checks with explicit conditions stored beside the code. It links request data and identifies failing assertions without repeating manual inspection. It does not replace browser tests or test-environment setup; curl may be enough for a one-off request. | Best for a developer or small team that repeatedly edits GitHub Actions workflows and wants to test a job before pushing. It provides a local run log, while a final GitHub check remains necessary. It is not suitable when exact hosted-runner parity is required. | For a Python developer or small team that wants a shared setup rather than relying on manually installed packages. Commit the dependency definition and lockfile, then sync the environment and run commands with uv. It does not isolate the operating system or untrusted code, or replace application compatibility tests. |