{"adoption": {"forks": 73, "observed_at": "2026-08-28T04:05:26.603116+00:00", "stars": 1719}, "canonical_url": "https://ross.abutalabs.com/products/birdseye", "card": {"archived": false, "artifact_type": "library", "description": "Graphical Python debugger which lets you easily view the values of all evaluated expressions", "domain": ["developer-tools"], "enriched": true, "function": ["developer-tools", "http-server"], "health_score": 57, "homepage": "https://birdseye.readthedocs.io", "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["alexmojaki/birdseye"], "name": "alexmojaki/birdseye", "platform": ["python", "cross-platform"], "pushed_at": "2026-01-11T12:25:17+00:00", "repo": "alexmojaki/birdseye", "stars": 1719, "tags": ["python-debugger", "time-travel-debugging", "expression-evaluation", "browser-ui", "ast-instrumentation", "debugging", "python", "web-server"], "topics": ["python-debugger", "python", "debugger", "debugging", "birdseye", "ast"], "urls": [], "use_cases": ["debug python code by inspecting expression values after a function runs", "step through loop iterations and see how values change", "find which expressions raise exceptions even when suppressed", "explore nested data structures and object contents during debugging", "debug code without changing how it is run, just add a decorator"], "what_it_is": "Birdseye is a graphical Python debugger that records the values of all evaluated expressions in a decorated function call and lets you inspect them in a browser after execution. It supports navigating loop iterations, spotting exceptions (even suppressed ones), and expanding data structures interactively.", "when_to_avoid": ["you need a traditional step debugger with breakpoints in your IDE", "performance overhead from recording all expressions is unacceptable", "you are debugging code you cannot modify to add decorators", "you need to debug multithreaded or distributed processes"], "when_to_choose": ["you want post-hoc inspection of expression values rather than line-by-line stepping", "you need to debug code run in any environment with minimal setup (pip install + decorator)", "you want to trace exceptions inside try/except blocks", "you prefer a visual, browser-based debugging interface"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/birdseye", "repo": "alexmojaki/birdseye", "role": "main", "score": 60}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:26.603116+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:34:06.558635+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "01e7fc493f24b2b6793cc2f4a1bc10ae6eccd9b2f2383806c47de29d90b77c7a", "fetched_at": "2026-08-28T04:05:26.603116+00:00", "kind": "readme", "missing": false, "url": "https://github.com/alexmojaki/birdseye"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 61, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3329, "days_push": 234, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 60, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}