REST CLI

Keyboard-driven TUI for testing HTTP endpoints.

Why?

Manage API calls using directory and file structure instead of massive JSON files.

No more merge conflicts. No more outdated collections. Each endpoint is a file. Git-friendly. Team-friendly.

Features

Core

  1. File-based requests (.http, .yaml, .json, .jsonc, .ws, openapi) - one endpoint per file
  2. Variable substitution with {{varName}} and shell commands $(cmd)
  3. Multi-value variables with aliases (e.g., dev, staging, prod)
  4. Profile system for environment-specific headers and variables
  5. Request history with split view and live preview
  6. Categories and filtering - organize requests with categories, filter by category in TUI

Execution & Control

  1. Request chaining with dependency resolution and automatic variable extraction
  2. Streaming support for SSE and real-time responses
  3. GraphQL & HTTP protocols with automatic detection
  4. WebSocket support with interactive TUI and predefined messages
  5. Request cancellation (ESC to abort in-progress requests)
  6. Confirmation modals for critical endpoints
  7. Concurrent request blocking prevents accidental request

Security & Auth

  1. OAuth 2.0 with PKCE flow and token auto-extraction
  2. mTLS support with client certificates
  3. Variable interpolation in TLS paths for dynamic cert loading

Analysis & Debugging

  1. Inline filter editor with bookmark system - filter responses while viewing JSON structure
  2. Response filtering with JMESPath or bash commands
  3. Response pinning and diff for regression testing
  4. Error detail modals with full stack traces
  5. Embedded documentation viewer with collapsible trees
  6. Analytics tracking with per-endpoint stats and aggregated metrics
  7. Request history with persistent storage, search, and timestamp tracking
  8. HTTP method color coding in file list for quick identification

Performance Testing

  1. Stress testing with configurable concurrency and load
  2. Ramp-up control for gradual load increase
  3. Real-time metrics (latency, RPS, percentiles P50/P95/P99)
  4. Test result persistence with historical comparison
  5. One-click re-run for saved test configurations

Development Tools

  1. Mock server with YAML-based endpoint definitions
  2. Debug proxy for inspecting HTTP traffic (localhost only, HTTP-only)
  3. HAR file importer (convert browser recordings to request files)

Automation

  1. CLI mode for scripting (JSON/YAML output)
  2. cURL converter (convert cURL to request files)
  3. OpenAPI converter (generate requests from specs)

License

See LICENSE