Luma is a minimalist terminal-based API client built with Go. It provides a clean and efficient interface for making HTTP requests and testing APIs directly from your terminal.
- 🎨 Clean terminal UI with color-coded HTTP methods
- 🔄 Support for GET, POST, PUT, and DELETE requests
- 📝 Request body editor
- 🔑 Header management
- 🔍 Query parameter support
- ⚡ Response display
- ⏱️ Response time tracking
- 📊 Status code visualization
Tab/Shift+Tab: Switch between input fieldsCtrl+Corq: Exit the applicationi: Enter insert modeEsc: Exit insert modeh/lorleft/right: Switch between request and response sections (in horizontal layout)j/korup/down: Switch between sections (in vertical layout)
Tab: Switch between Body, Headers, and Params tabsEnter: Submit the requestAlt+Backspace: Delete current header or parameter
Enter: Save current header/parameter and move to nextTab/Shift+Tab: Move between headers/parameters- Maximum of 5 headers/parameters allowed
j/korup/down: Scroll through response (in insert mode)
The interface is divided into several sections:
-
Top Bar
- HTTP Method selector (GET, POST, PUT, DELETE)
- URL input field
- Status code and response time
-
Request Section
- Body tab: Edit request body
- Headers tab: Manage request headers
- Params tab: Manage query parameters
-
Response Section
- Displays response body
- Shows status code and response time
- Scrollable viewport for large responses
Contributions are welcome! Please feel free to submit a Pull Request.