Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neovim
  3. rest.nvim

rest.nvim

GPL-3.0Luav3.13.0

A fast, asynchronous HTTP client for Neovim that runs HTTP requests directly from .http files within the editor.

GitHubGitHub
2.0k stars147 forks0 contributors

What is rest.nvim?

rest.nvim is a Neovim plugin that functions as a full-featured HTTP client, allowing developers to write and execute HTTP requests directly from .http files within the editor. It solves the problem of context switching between the editor and external API testing tools by providing a fast, integrated solution for API development and debugging.

Target Audience

Neovim users who regularly work with APIs, such as backend developers, API integrators, and DevOps engineers needing to test endpoints without leaving their editor.

Value Proposition

Developers choose rest.nvim for its speed, deep Neovim integration, and extensibility via Lua scripting, offering a more streamlined and customizable workflow compared to standalone GUI clients or basic command-line tools.

Overview

A very fast, powerful, extensible and asynchronous Neovim HTTP client written in Lua.

Use Cases

Best For

  • Testing REST APIs directly from Neovim without switching applications
  • Writing and debugging .http request files with syntax highlighting and validation
  • Automating API workflows with pre-request and post-request Lua scripts
  • Managing environment variables and cookies for complex API testing scenarios
  • Integrating HTTP client functionality into a Neovim-based development environment
  • Quickly inspecting API responses with formatted output and request statistics

Not Ideal For

  • Teams needing GUI-based API clients with collaborative features like shared collections
  • Developers using editors other than Neovim or older Neovim versions
  • Projects requiring advanced automation with non-Lua scripting languages or complex visual test suites

Pros & Cons

Pros

Asynchronous Execution

Uses a custom Lua wrapper for curl to perform non-blocking HTTP requests, ensuring the editor remains responsive during API calls.

Accurate Syntax Parsing

Leverages tree-sitter for precise highlighting and parsing of .http files, following Intellij's HTTP client spec for reliability.

Dynamic Environment Support

Allows setting variables from responses or .env files, enabling reusable configurations and streamlined testing workflows.

Integrated Results Display

Provides a dedicated pane with formatted responses and detailed statistics like time taken and download size for quick inspection.

Cons

Neovim-Only Limitation

Exclusively works with Neovim 0.10.1+, excluding users of Vim, other editors, or older Neovim versions without upgrade paths.

External Dependency Overhead

Requires curl and tree-sitter-http, adding installation complexity and potential setup issues, as hinted by the troubleshooting guide.

Niche Feature Set

Lacks GUI elements, collaborative tools, and advanced protocols support compared to standalone clients like Postman, limiting broader team adoption.

Open Source Alternative To

rest.nvim is an open-source alternative to the following products:

Insomnia
Insomnia

Insomnia is an open-source API client for designing, testing, and debugging REST, GraphQL, and other web APIs with a collaborative interface.

Postman
Postman

Postman is a collaboration platform for API development that allows developers to design, test, and document APIs.

Frequently Asked Questions

Quick Stats

Stars2,020
Forks147
Contributors0
Open Issues36
Last commit3 months ago
CreatedSince 2021

Tags

#developer-tools#rest-client#curl#asynchronous#neovim-plugin#tree-sitter#api-testing#vim-integration#curl-wrapper#neovim#lua#nvim#http-client

Built With

c
curl
N
Neovim
T
Tree-sitter
L
Lua

Included in

Neovim20.6k
Auto-fetched 1 day ago

Related Projects

kulala.nvimkulala.nvim

A fully-featured 🤏 HTTP-client 🐼 interface 🖥️ for Neovim ❤️.

Stars1,968
Forks91
Last commit1 month ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub