A Vim-style TUI (Terminal User Interface) tool
for exploring Swagger/OpenAPI documents and testing APIs in the terminal


- 🎹 Vim-style keyboard navigation - Familiar keybindings like h, j, k, l with NORMAL, INSERT, and COMMAND modes
- ✏️ Vim integration for JSON editing - Seamlessly connect to Vim for advanced JSON editing
- 📄 Swagger 2.0 & OpenAPI 3.x support - Supports both JSON/YAML formats
- 🔌 tRPC support - Coming soon
- 🎨 Terminal-friendly UI - Beautiful TUI with neon green theme
- ⚡ Fast API testing - Execute APIs directly from the terminal
- 🔍 Search & filtering - Quickly find endpoints
- 📋 Clipboard support - Copy response results to clipboard
npm install -g @gomjellie/lazyapi
lazyapi <openapi-file-or-url>
# URL
lazyapi https://petstore.swagger.io/v2/swagger.json
# JSON file
lazyapi openapi.json
# YAML file
lazyapi swagger.yaml
| Key |
Description |
j |
Move to next item |
k |
Move to previous item |
g |
Move to top of list |
G |
Move to bottom of list |
:m<1-6> |
Select Method (1:ALL, 2:GET, 3:POST, 4:PUT, 5:DELETE, 6:PATCH) |
l / Enter |
View details of selected endpoint |
/ |
Enter search mode |
:q |
Quit |
| Key |
Description |
| Text input |
Enter search query (searches path, description, tags) |
Enter |
Apply search and update results |
Esc |
Cancel search and return to NORMAL mode |
| Key |
Description |
j |
Move to next field |
k |
Move to previous field |
i |
Enter INSERT mode (edit field) |
Enter |
Execute API request |
u |
Return to list view |
| Key |
Description |
Esc |
Switch to NORMAL mode |
| Text input |
Edit field value |
| Key |
Description |
j / k |
Scroll response content |
Tab |
Switch to next tab (Body/Headers/Cookies) |
y |
Copy Body content to clipboard |
r |
Re-run request |
q / u |
Return to detail view |
- Node.js >= 20.0.0
- pnpm >= 8.0.0
Contributions are always welcome! Please open an issue or submit a PR.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature)
- Commit your Changes (
git commit -m 'Add some AmazingFeature')
- Push to the Branch (
git push origin feature/AmazingFeature)
- Open a Pull Request
MIT License - see the LICENSE file for details.