A local, in-browser tool for stepping through Python code execution and watching program state change — with trees, recursion, and linked lists rendered as actual trees/chains/graphs instead of Python Tutor's flat boxes-and-arrows.
pip install -r requirements.txt
python app.pyWindows note: the bare python command may resolve to the Microsoft Store's app-execution-alias stub instead of a real interpreter. If python app.py does nothing or opens the Store, use the Python launcher instead:
py app.pyThen open http://127.0.0.1:5000 in your browser.
pytesttracer.pyusessys.settraceto step through your code line-by-line, capturing the full call stack and all local variables at each step, with a uniquecall_idassigned to every function invocation so recursive calls can be told apart.app.pyis a small Flask server with one real endpoint,POST /run, that executes your pasted code through the tracer and returns the full list of steps as JSON.- The frontend (Preact +
htm, no build step, loaded straight from a CDN as ES modules) replays those steps, letting you scrub back and forth, and renders linked lists/trees/recursive call graphs with D3.
This is a local-only tool — it runs your own code with a bare exec(), on your own machine, exactly like running a REPL. There's no sandboxing and it isn't meant to be hosted publicly.
[Add a demo GIF/video link here.]
MIT — see LICENSE.