Something went wrong. Try again.
Postman-like nvim client
Something went wrong. Try again.
rest.nvim docs
5 files
README.md
REST.nvim Documentation #
Welcome to REST.nvim documentation. This folder contains detailed information about the plugin.
Quick Links #
- Features - Complete feature overview
- Architecture - Technical design and module structure
- Development - Development guide for contributors
- Migration - Migration guide from old version
Documentation Structure #
For Users #
Start here if you're using REST.nvim:
- Features - Learn what REST.nvim can do
- Migration - Upgrade from old version (if needed)
- Main README - Installation and basic usage
For Developers #
Start here if you want to contribute or extend REST.nvim:
- Architecture - Understand how it works
- Development - Set up development environment
- Look at source code -
lua/rest/directory, especiallylua/rest/types.lua
Key Concepts #
Dual-Pane Dashboard #
┌──────────────────────────────────┐
│ Request (30%) │ Response (70%) │
│ - Method │ - Status │
│ - URL │ - Headers │
│ - Headers │ - Body │
│ - Body │ - Loader │
└──────────────────────────────────┘
Async Execution #
HTTP requests execute without blocking the UI:
- You can continue editing while loading
- Spinner shows request progress
- Response appears when ready
State Management #
Central state store manages:
- Current request
- Current response
- Loading status
- Error messages
Modular Architecture #
init.lua (setup)
↓
cmd.lua (commands)
├─→ dashboard.lua (UI)
└─→ http_client.lua (HTTP)
└─→ state.lua (state)
└─→ loader.lua (spinner)
Common Tasks #
Make an API Request #
:Rest GET https://api.example.com
Edit a Complex Request #
:Rest
" Edits request in left pane
" <C-s> to execute
" Results in right pane
Use from REST File #
" In api.rest file:
GET https://api.github.com/users
Accept: application/json
" Then: :Rest
Copy Response #
" After request completes:
<C-y> " Copies response to clipboard
Advanced Topics #
Custom Configuration #
See Development
Creating Extensions #
See Architecture
Contributing #
See Development
FAQ #
Is REST.nvim backward compatible? #
Yes! See Migration for details.
Can I use my old REST files? #
Yes, format is unchanged.
How do I report bugs? #
Open an issue on GitHub with:
- Neovim version
- Error message
- Steps to reproduce
How do I request features? #
Open a feature request on GitHub with:
- Description of use case
- Why it would be helpful
- Suggested implementation
Where's the source code? #
In lua/rest/ directory:
init.lua- Plugin entry pointcmd.lua- Command routingui/dashboard.lua- Main interfaceutils/- Helper modules
Resources #
Neovim #
Dependencies #
HTTP Testing #
- Postman - Inspiration
- curl - What we use under the hood
- httpbin.org - Test API
Getting Help #
- Check documentation in this folder
- Search GitHub issues
- Open a new issue if not found
- Check Development for debugging tips
Last Updated: November 17, 2025
Version: 1.0
Status: Production Ready