Built with Bun for Maximum Performance

HTTP Request Management
Made Simple

A powerful CLI tool for managing HTTP requests using YAML configuration files. Perfect for API testing, automation, and development workflows.

Simple YAML Configuration

Define your HTTP requests using clean, readable YAML files. Support for variables, templates, parallel execution, and response validation.

api-tests.yaml
# api-tests.yaml
global:
  variables:
    BASE_URL: https://api.example.com
    API_TOKEN: your-token-here
  execution: parallel

requests:
  - name: Get Users
    url: ${BASE_URL}/users
    method: GET
    headers:
      Authorization: Bearer ${API_TOKEN}
      
  - name: Health Check
    url: ${BASE_URL}/health
    method: GET
    validation:
      status: 200
      body:
        status: ok

Install

# Install with Bun (recommended)
bun install -g @curl-runner/cli

# Or with npm
npm install -g @curl-runner/cli

Run

# Run your tests
curl-runner api-tests.yaml -v

# Run all YAML files in directory
curl-runner tests/ --parallel

# Save results to JSON
curl-runner api-tests.yaml --output results.json

Quick to Install & Use

Get started in seconds with your preferred package manager. Works on Linux, macOS, and Windows with full cross-platform support.

Powerful Features

Everything you need for
HTTP request management

A comprehensive toolkit designed for developers who need reliable API testing and automation

YAML Config

Simple Configuration

Define HTTP requests using clean, readable YAML files with support for variables, templates, and validation.

# api-test.yaml
requests:
- name: Get User
url: ${BASE_URL}/users/1
method: GET
headers:
Authorization: Bearer ${TOKEN}
validation:
status: 200
body:
id: 1
Blazing Fast

Built with Bun

Exceptional performance for sequential and parallel request execution.

10x
Faster than traditional tools
CLI

Beautiful Output

Progress indicators, colored output, and comprehensive error handling.

Get Users [200 OK] 125ms
Create Post [201 Created] 89ms
Running 5 parallel requests...
Advanced

Flexible & Extensible

Global settings, variable interpolation, retries, and custom output formats.

Parallel Execution
Run multiple requests simultaneously
Response Validation
Assert status codes and body content
Export Results
Save to JSON, CSV, or custom formats
Auto Retry
Configurable retry policies
Community

Contributors

Meet the passionate developers who make curl-runner possible. Want to join us? We'd love to have you contribute to the project!

Alex Casillas

Alex Casillas

Creator & Maintainer

Ready to get started?

Join developers who trust curl-runner for their HTTP request management needs.