Skip to content

Debugging projections

Gaffer’s debug server speaks the Debug Adapter Protocol over TCP, so any DAP-aware editor can drive breakpoint debugging, step-through, and state inspection against a running projection.

The KurrentDB Projections extension wires everything up: click Debug above the projection in gaffer.toml, set breakpoints in the JS, step through handlers as they run. The extension manages the gaffer subprocess and port for you.

For editors without a gaffer extension, start the DAP server with gaffer dev --debug --debug-port <port> and attach over TCP. See Other editors for attach configs for Neovim, Helix, and Emacs.