qix-/better-exceptions

Pretty and useful exceptions in Python, automatically.

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 15 minutes ago
Type:Library / SDKCategory(s):Debugging & ProfilingDeveloper Tools
Added to GitGenius on September 14th, 2026
Created on March 12th, 2017
Open Issues & Pull Requests: 49 (+0)
GitHub issues: Enabled
Number of forks: 229
Total Stargazers: 4,719 (+0)
Total Subscribers: 68 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 0.9 hours
Mean response time: 118.3 days
90th percentile: 331.3 days
Tracked items: 6

Most active contributors

Sign in to see contributor activity.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 3
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 2,102 days
Stale 30+ days: 2
Stale 90+ days: 2

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • :dollar: Funded on Issuehunt (2)
  • bug (2)
  • enhancement (1)
  • help wanted (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

better-exceptions is a Python library that enhances exception output with better formatting and more helpful information.

The tool solves the problem of Python exceptions being difficult to read and debug by automatically intercepting and reformatting exception tracebacks. It displays exceptions with syntax highlighting, variable values at each stack frame, and clearer formatting without requiring changes to existing code. The approach works by hooking into Python's exception handling system through an environment variable and a .pth file that activates the custom exception handler on interpreter startup.

Developers should use this tool during development and debugging when they want more readable and informative exception output. It works in standard Python scripts, the interactive REPL, unittest test runners, and Django applications, though each context requires slightly different setup. The tool is designed for development environments; the README explicitly warns against leaving it enabled in production to avoid leaking sensitive data through logs. It requires only setting an environment variable and installing the package, making adoption straightforward for most workflows.

The project receives infrequent updates with long gaps between releases. Issues and pull requests accumulate without consistent response or resolution, indicating limited active maintenance. The codebase shows minimal recent activity and appears to be in a stable but unmaintained state.