nvim-dap is a Debug Adapter Protocol client implementation for Neovim that enables debugging workflows directly within the editor.
The tool solves the problem of integrating debugging capabilities into Neovim by implementing the Debug Adapter Protocol standard. This approach allows Neovim to communicate with language-specific debug adapters, enabling users to launch or attach to applications, set breakpoints, step through code, and inspect application state without leaving the editor. The plugin provides both command-line interfaces and Lua API functions for these operations, along with a built-in REPL for expression evaluation and a widget system for inspecting variables, threads, and stack traces.
Developers should choose this tool if they use Neovim and want debugging integrated into their workflow. It suits projects in any language for which a debug adapter exists, which covers most mainstream languages through community-maintained adapters. The tool itself is language-agnostic; language support depends on installing and configuring the appropriate debug adapter. The project acknowledges that users may prefer different UI approaches by documenting several extensions: a full IDE-like interface, a middle-ground option, and inline value display, allowing developers to select the inspection style that fits their preferences.
The project maintains active engagement with its user base through wiki documentation that is community-maintained, with explicit encouragement for users to contribute adapter configurations and report outdated instructions. Development focuses on supporting recent Neovim versions, with compatibility maintained across multiple release lines. The codebase emphasizes providing both high-level commands and low-level Lua APIs, giving users flexibility in how they integrate debugging into their workflows.