For debugging protocols, the strongest matches are mfussenegger/nvim-dap (This repository is a Neovim client for the Debug), cs01/gdbgui (This repository is a web-based frontend and graphical visualizer) and emacs-lsp/lsp-mode (It is an Emacs client for the Language Server). sebastianbergmann/exporter and hardkoded/puppeteer-sharp round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.
Hand-picked debugging protocol tools, ranked by GitHub stars and activity. Compare the top options and find the right one for your stack.
nvim-dap is a Neovim plugin that serves as a client implementation of the Debug Adapter Protocol. It provides a language-agnostic debugger interface that integrates external debugger binaries into the editor, allowing users to manage breakpoints and step through code. The project enables remote process debugging by attaching to running processes or containerized applications via TCP sockets and network proxies. It supports connecting to debug adapters through standard input/output or TCP, with specialized support for launching and attaching to Java processes. The plugin covers program execut
This repository is a Neovim client for the Debug Adapter Protocol rather than a server or protocol implementation itself, making it an editor integration building block rather than the core debugging server requested.
gdbgui is a web-based graphical frontend and visualizer for the GNU Debugger. It serves as a compiled language debugger that provides source-level inspection for C, C++, Go, Rust, and Fortran. The project acts as a remote debugging interface, providing a secure web portal for connecting to and controlling GDB sessions over a network. It distinguishes itself by offering a browser-based environment to visualize call stacks and data structures for programs running via the GNU Debugger. The interface covers program execution control and breakpoint management, featuring graphical variable inspect
This repository is a web-based frontend and graphical visualizer specifically for GDB rather than a language-agnostic protocol server implementing a standard like the Debug Adapter Protocol.
lsp-mode is a Language Server Protocol client and IDE feature set for Emacs. It functions as a semantic code analysis tool and JSON-RPC communication layer that connects the editor to external language servers to provide intelligent code completion and real-time diagnostics. The project also serves as a Debug Adapter Protocol client, enabling interactive debugging sessions and breakpoint management. This allows for stepping through code and inspecting variables via a standardized protocol, including support for debugging within Docker containers. The system covers a broad range of developmen
It is an Emacs client for the Language Server Protocol and Debug Adapter Protocol rather than a standalone debugging protocol server or implementation itself, serving as an editor integration layer.
This project is a PHP variable export library designed to convert complex data structures and internal memory states into human-readable strings. It functions as a debugging tool that transforms variables and object hierarchies into formatted text for state inspection and troubleshooting. The system prevents output clutter by creating compact string representations of data types and circular references. It employs recursive traversal with depth limiting and circular reference detection to ensure that complex hierarchies are visualized without causing infinite loops. The library covers a broa
This repository is a PHP variable export library rather than a multi-language debugging protocol implementation, making it a lower-level building block for state inspection rather than a complete debugging server.
Puppeteer Sharp is a .NET wrapper and automation library used to programmatically drive headless Chrome and Chromium browsers. It functions as a Chrome DevTools Protocol client, providing a framework for web scraping and the automation of web page interactions. The project enables the execution of JavaScript within the browser context and supports attaching to remote browser sessions via WebSocket endpoints. It allows for the manipulation of browser states to perform functional web testing and visual regression analysis. Capability areas include content transformation via HTML injection, pag
Puppeteer Sharp is a browser automation wrapper and DevTools Protocol client rather than a general-purpose code debugging server or protocol implementation.
Icecream is a Python debugging utility designed for inspecting variable values and execution flow during development. It provides a variable inspector that automatically labels values and attaches file and line number metadata to each output. The tool features a builtins injector that adds debugging functions to the global namespace, allowing for universal access across all project files without manual imports. It also includes an inline debugging tool that returns its arguments to the caller, enabling the insertion of inspection calls directly into active expressions without altering program
Icecream is a print-based Python debugging utility for inspecting variables inline rather than a language-agnostic server implementing standard debugging protocols.
Vimspector is a visual debugger integration for Vim that enables developers to step through code and inspect program state without leaving the editor. It utilizes the Debug Adapter Protocol to provide a unified interface for debugging multiple programming languages through various debug adapters. The project distinguishes itself by supporting low-level analysis and specialized environments, including bare metal hardware debugging for microcontrollers and the ability to perform disassembly analysis and process memory dumping. It also provides remote debugging capabilities by proxying requests
Vimspector is a client-side editor plugin for Vim that integrates with debug adapters rather than implementing a debugging server or protocol itself.
The C/C++ extension for Visual Studio Code provides language support for C and C++ programming, including IntelliSense-powered code editing, navigation, and debugging capabilities. It enables syntax highlighting, code completion, hover information, and error checking for C and C++ source files, along with features like semantic colorization, symbol search, and call hierarchy exploration. The extension offers comprehensive debugging support for C/C++ programs, including launching debug sessions with breakpoints, stepping through code, and inspecting variables. It supports debugging multi-threa
This repository is a specific editor extension and language tool for C and C++ rather than a general, multi-language debugging protocol implementation or server.
Lapce is a high-performance text editor built with Rust that utilizes hardware acceleration for fast rendering and responsiveness. It functions as a modal text editor with Vim-style keybindings to minimize hand movement, an LSP client for language intelligence, and a remote development environment for editing files and executing code on distant servers. The editor features an extensible architecture based on the WebAssembly System Interface, allowing it to execute plugins compiled to WASI for cross-language functionality. It further distinguishes itself by implementing the Debug Adapter Proto
This repository is a full text editor and IDE rather than a standalone debugging protocol server, though it does include debugger integration for its editing environment.
DevPod is an IDE-agnostic remote development tool and containerized environment manager. It provisions reproducible development workspaces using open-standard configuration files and orchestrates these environments across local machines, remote servers, or public cloud providers. The system utilizes a client-side orchestration model that decouples workspace management from centralized cloud controllers. It features a pluggable provider-based infrastructure abstraction, which allows for multi-backend deployment and the creation of custom provider plugins to extend support for additional cloud
DevPod is a remote development environment manager and workspace orchestrator rather than a debugging protocol or debugging server implementing code-stepping and variable inspection.
This is a local development server extension for VS Code that provides static file hosting and automatic browser reloading upon saving source files. It functions as a live reloading tool and static file web server, allowing developers to preview web pages locally with support for custom ports and root directories. The project distinguishes itself by offering a local network preview server that exposes projects to other devices on the same wireless network via IP. It also includes a development proxy capable of adding Cross-Origin Resource Sharing headers and proxying traffic to external URIs.
This repository is a local development web server and live-reloading extension for VS Code rather than a protocol server for inspecting and stepping through code execution, making it a neighbouring web-tooling utility rather than a debugger implementation.
| Repository | Stars | Language | License | Last push |
|---|---|---|---|---|
| mfussenegger/nvim-dap | 7K | Lua | gpl-3.0 | |
| cs01/gdbgui | 10.3K | TypeScript | GPL-3.0 | |
| emacs-lsp/lsp-mode | 5.1K | Emacs Lisp | gpl-3.0 | |
| sebastianbergmann/exporter | 6.8K | PHP | BSD-3-Clause | |
| hardkoded/puppeteer-sharp | 3.9K | C# | MIT | |
| gruns/icecream | 10.1K | Python | MIT | |
| puremourning/vimspector | 4.3K | Vim Script | Apache-2.0 | |
| microsoft/vscode-cpptools | 6K | TypeScript | other | |
| lapce/lapce | 38.6K | Rust | Apache-2.0 | |
| loft-sh/devpod | 15K | Go | MPL-2.0 |