# debug dojo
<p align="center">
<img src="https://github.com/bwrob/debug-dojo/blob/main/docs/logo/logo_python.png?raw=true" alt="debug dojo" style="width:50%; max-width:350px;"/>
</p>
<p align="center">
<em>🏣 debug dojo, a place for zen debugging</em>
</p>
[](https://pypi.org/project/debug-dojo)
[](https://pypi.org/pypi/debug-dojo/)
[](https://pepy.tech/project/debug-dojo)
[](https://github.com/bwrob/debug-dojo/blob/main/LICENSE)
[](https://results.pre-commit.ci/latest/github/bwrob/debug-dojo/main)
[**debug-dojo**](https://bwrob.github.io/debug-dojo/) is a Python package providing utilities for enhanced debugging and inspection in the terminal.
It leverages [`rich`](https://github.com/Textualize/rich) for beautiful output and offers helpers for side-by-side object comparison, improved tracebacks from `rich`, and easy integration with different debuggers -- `debugpy`, `pudb`, `pdb`, and `ipdb`.
## CLI usage
Run your Python script with debugging tools enabled using the `debug-dojo` command:
```console
dojo my_script.py
```
You can optionally set configuration, verbose mode, and specify the debugger type. Both script files and modules are supported:
```console
dojo --debugger ipdb --config dojo.toml --verbose --module my_module
```
## From the code
In the `PuDB` style, you can install all debugging tools and enter the debugging mode with a single command:
```python
object_1 = {"foo": 1, "bar": 2}
object_2 = [1, 2, 3]
import debug_dojo.install; b()
p(object_1) # Pretty print an object with Rich.
i(object_1) # Inspect an object using Rich.
c(object_1, object_2) # Compare two objects side-by-side.
```
## Documentation
For instructions regarding installation, configuration and usage please visit [documentation](https://bwrob.github.io/debug-dojo/).
Raw data
{
"_id": null,
"home_page": null,
"name": "debug-dojo",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.14,>=3.10",
"maintainer_email": null,
"keywords": "debugging, inspection, tools, development",
"author": null,
"author_email": "bwrob <bartosz.marcin.wroblewski@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/54/c1/80ad039f94d7a4bfefef738e9c9a76ad65072450bf2cc16e5f3e9f585c5d/debug_dojo-0.5.0.tar.gz",
"platform": null,
"description": "# debug dojo\n\n<p align=\"center\">\n <img src=\"https://github.com/bwrob/debug-dojo/blob/main/docs/logo/logo_python.png?raw=true\" alt=\"debug dojo\" style=\"width:50%; max-width:350px;\"/>\n</p>\n\n<p align=\"center\">\n<em>\ud83c\udfe3 debug dojo, a place for zen debugging</em>\n</p>\n\n[](https://pypi.org/project/debug-dojo)\n[](https://pypi.org/pypi/debug-dojo/)\n[](https://pepy.tech/project/debug-dojo)\n[](https://github.com/bwrob/debug-dojo/blob/main/LICENSE)\n[](https://results.pre-commit.ci/latest/github/bwrob/debug-dojo/main)\n\n[**debug-dojo**](https://bwrob.github.io/debug-dojo/) is a Python package providing utilities for enhanced debugging and inspection in the terminal.\nIt leverages [`rich`](https://github.com/Textualize/rich) for beautiful output and offers helpers for side-by-side object comparison, improved tracebacks from `rich`, and easy integration with different debuggers -- `debugpy`, `pudb`, `pdb`, and `ipdb`.\n\n## CLI usage\n\nRun your Python script with debugging tools enabled using the `debug-dojo` command:\n\n```console\ndojo my_script.py\n```\n\nYou can optionally set configuration, verbose mode, and specify the debugger type. Both script files and modules are supported:\n\n```console\ndojo --debugger ipdb --config dojo.toml --verbose --module my_module\n```\n\n## From the code\n\nIn the `PuDB` style, you can install all debugging tools and enter the debugging mode with a single command:\n\n```python\nobject_1 = {\"foo\": 1, \"bar\": 2}\nobject_2 = [1, 2, 3]\n\nimport debug_dojo.install; b()\n\np(object_1) # Pretty print an object with Rich.\ni(object_1) # Inspect an object using Rich.\nc(object_1, object_2) # Compare two objects side-by-side.\n\n```\n\n## Documentation\n\nFor instructions regarding installation, configuration and usage please visit [documentation](https://bwrob.github.io/debug-dojo/).\n",
"bugtrack_url": null,
"license": null,
"summary": "\ud83c\udfe3 debug dojo, a place for zen debugging",
"version": "0.5.0",
"project_urls": {
"Changelog": "https://bwrob.github.io/debug-dojo/changelog/",
"Documentation": "https://bwrob.github.io/debug-dojo/",
"Homepage": "https://bwrob.github.io/debug-dojo/",
"Source": "https://github.com/bwrob/debug-dojo/"
},
"split_keywords": [
"debugging",
" inspection",
" tools",
" development"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "01c6dd3f7597aaff9a42518f6be94cf85aa42d2b128ec2e9f13205972b1de054",
"md5": "c415aaa50926169e059e201559590235",
"sha256": "f8373c68a0fccff8847356a574fa1c37f6e2e38dd7478eeb6feed8bf18b96236"
},
"downloads": -1,
"filename": "debug_dojo-0.5.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c415aaa50926169e059e201559590235",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.14,>=3.10",
"size": 12743,
"upload_time": "2025-08-23T12:24:55",
"upload_time_iso_8601": "2025-08-23T12:24:55.443077Z",
"url": "https://files.pythonhosted.org/packages/01/c6/dd3f7597aaff9a42518f6be94cf85aa42d2b128ec2e9f13205972b1de054/debug_dojo-0.5.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "54c180ad039f94d7a4bfefef738e9c9a76ad65072450bf2cc16e5f3e9f585c5d",
"md5": "d0faf7f82cfcf5878dfb29472d9c0495",
"sha256": "e42e418a52e9929623ba7b5e5306d893ab0024c2621538530ee4e5e6ccdfa80e"
},
"downloads": -1,
"filename": "debug_dojo-0.5.0.tar.gz",
"has_sig": false,
"md5_digest": "d0faf7f82cfcf5878dfb29472d9c0495",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.14,>=3.10",
"size": 12381,
"upload_time": "2025-08-23T12:24:56",
"upload_time_iso_8601": "2025-08-23T12:24:56.791334Z",
"url": "https://files.pythonhosted.org/packages/54/c1/80ad039f94d7a4bfefef738e9c9a76ad65072450bf2cc16e5f3e9f585c5d/debug_dojo-0.5.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-23 12:24:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "bwrob",
"github_project": "debug-dojo",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [],
"lcname": "debug-dojo"
}