High-performance terminal-based HTTP client

A 3-panel TUI for HTTP, WebSocket, and gRPC. Mouse and keyboard support with Vim-style navigation. Built with Go for maximum performance.

curl -sSL https://raw.githubusercontent.com/Queaxtra/raco/main/install.sh | sh

Copy and paste into your terminal to install

FEATURES

Everything you need

3-Panel Interface

Sidebar for collections, Request panel for configuration, and Response panel for output. Intuitive terminal UI that feels familiar.

Mouse & Keyboard

Full mouse support with click-to-focus. Drag to select text. Combined with Vim-style keyboard navigation.

Clipboard Integration

Drag-to-select any text and it automatically copies to clipboard.

Git-Friendly Storage

Collections stored as JSON/YAML files. Version control and share with your team.

Environment Variables

Define environments in YAML files. Switch between dev, staging, and production instantly.

JSON Auto-Formatting

API responses automatically formatted and colorized for readability.

Request History

Automatically tracks your recent requests. Quickly replay previous calls.

Real-Time Metrics

View request statistics, success rates, response times, and recent activity with F1 dashboard.

Command Palette

Ctrl+P opens the palette. Type to filter requests. Navigate and load instantly.

PROTOCOLS

One interface, multiple protocols

HTTP / HTTPS

Full HTTP client with support for all standard methods. Headers, body, query params, and timeout control. JSON auto-formatting for readable responses.

WebSocket

Real-time bidirectional communication. Connect to WS/WSS endpoints, send messages, and receive responses in an interactive terminal interface.

gRPC

High-performance RPC framework support. Connect to gRPC services and stream messages with the same intuitive 3-panel interface.

WORKFLOW

Built for your workflow

Save Requests

Configure your request with URL, method, headers, and body. Press Ctrl+W to save. Enter a name and it is stored in your collection for quick access later.

Load & Organize

Navigate your collections with j/k keys. Press Enter to expand or collapse. Press Enter on a request to load it into the request panel instantly.

Command Palette

Press Ctrl+P to open the command palette. Type to filter through all your saved requests. Navigate with arrow keys and press Enter to load instantly.

Metrics Dashboard

Press F1 anytime to view real-time metrics. Track request statistics, success rates, response times, and recent activity in a beautiful terminal dashboard.

KEYBOARD DRIVEN

Vim-style navigation

Global
Quit Ctrl+C
Switch panels Tab
Unfocus input Esc
New collection Ctrl+N
Save request Ctrl+W
Metrics dashboard F1
Command palette Ctrl+P
Navigation
Navigate up/down j/k
Expand/Load Enter
Change protocol ←/→
Request
Send/Connect Ctrl+R
Add header Ctrl+S
Delete header Ctrl+D
Disconnect WS Ctrl+Q
VERSION CONTROL FRIENDLY

Git-friendly storage

All your collections and environments are stored as plain text files in JSON and YAML formats. Version control them with Git, share with your team, or sync across machines.

Collections

~/.raco/collections/*.json

Environments

~/.raco/environments/*.yaml

Version Control

Git diff friendly, human readable

# Example collection

~/.raco/collections/api.json

{
  "name": "Production API",
  "requests": [
    {
      "name": "Get Users",
      "method": "GET",
      "url": "https://api.example.com/users",
      "headers": {
        "Authorization": "Bearer token"
      }
    }
  ]
}
GET STARTED

Installation

Terminal
curl -sSL https://raw.githubusercontent.com/Queaxtra/raco/main/install.sh | sh