Debugging and Phoenix
Inspect Elixir execution and work with LiveView templates.
On this page
Start a debug session#
Create a working Elixir, Mix, test, or IEx configuration and run it normally first. Place a breakpoint on executable code, then choose Debug. The graphical debugger can pause in Elixir source and Elixir segments of supported EEx, LEEx, and HEEx templates.
At a breakpoint, inspect processes, stack frames, and Elixir-aware values such as structs, maps, tuples, binaries, lists, and pids. Evaluate expressions in the selected frame. Use step over, step into, and step out to follow execution; selecting a different frame does not execute code.
Control module interpretation#
Review debugger module filters when a breakpoint fails to bind or stepping enters too much library code. Rebuild after changing sources and verify that the running process uses those artifacts. A breakpoint in an unexecuted template branch will not pause.
Edit Phoenix and LiveView#
Open .heex, .leex, or .eex files within the Mix project. Completion supports assigns, component attributes, slots, built-in Phoenix components, phx-* bindings, and route paths. Use navigation to follow component declarations and live templates or new-file templates for controllers, LiveViews, components, and Ecto schemas.
Refactor source#
Use semantic Rename or supported Extract/Inline/Change Signature/Move actions with their usage preview. Fixed-arity and single-module restrictions apply to some refactorings. Compile and run focused ExUnit tests after changing an API used by templates or generated code.
Manual for version 2026.1.15 · Reviewed