PuDB

Debug Python code visually within your console. Offers a lightweight, keyboard-driven interface with syntax highlighting, stack traces, and variable inspection.

Visit PuDB
A screenshot of PuDBVisit

PuDB is a console-based visual debugger for Python, designed to bring the features of modern GUI debuggers into a lightweight, keyboard-centric terminal environment. Debug your code directly where you write and test it.

It offers a comprehensive view with syntax-highlighted source code, the call stack, breakpoints, and variables displayed simultaneously and updated continuously. This keeps you fully aware of your program's state. Key features include:

  • Intuitive keyboard navigation using single keystrokes, including cursor keys and Vi shortcuts.
  • Easy breakpoint management: set with 'b', run-to-cursor with 't', and edit visually.
  • Built-in light and dark themes, plus support for custom themes.
  • A module browser ('m') to view, load, and reload modules.
  • Integrated Python shell ('!') and command prompt ('Ctrl-X') access within the current context.
  • Strong exception handling with a post-mortem mode for easy crash analysis.
  • Support for remote debugging and IPython integration.

Works with Python 3.6 and newer.

Categories:
Share:
Featured tools:

Similar to PuDB:

Create intelligent, beautiful, and linked documentation.
DocumentationPython
Generate versatile, cross-referenced technical documentation from reStructuredText or Markdown. Supports multiple output formats, themes, extensions, and API docs.
Connect to running Python processes for live debugging.
Debugging
Access running Python applications for debugging. Connect via a Unix socket to view thread stacktraces and interact with the process using a REPL.
Async database access for Python with validation.
ORMsPython
An async Python ORM supporting Postgres, MySQL, and SQLite. Built with SQLAlchemy core, Databases, and Pydantic for validation and migrations.
Flexible toolkit for Python code tracing and debugging.
DebuggingPython
Trace Python code execution with powerful filters and custom actions. Debug, log, and inspect code behavior without complex setup or storage.
Database abstraction without the ORM overhead.
ORMsPython
Write database-agnostic Python code. This pure Python DAL dynamically generates SQL/NoSQL, mapping records to dictionaries for simpler data access.
Profile live Python code safely, with minimal overhead.
DebuggingProfiling+1 more
Profile running Python programs with extremely low overhead. Visualize time spent without restarting or modifying code. Safe for production environments.
Query databases naturally with Python generators.
ORMsPython
Write database queries using Python generator expressions. Translates Python syntax trees to SQL for SQLite, MySQL, PostgreSQL, and Oracle. Features an ERD editor.
Simple, fast, file-based key-value storage for Python.
DatabasesPython
Store key-value data easily in Python with this lightweight, file-based library. Offers simple API, fast performance, and asynchronous support.
A small, expressive Python ORM for simpler database interactions.
ORMsPython
Build Python applications with a simple, expressive ORM. Supports PostgreSQL, MySQL, SQLite, and CockroachDB. Features easy model definition and powerful querying.

Command Menu