{"adoption": {"forks": 348, "observed_at": "2026-08-28T04:06:57.351386+00:00", "stars": 2510}, "canonical_url": "https://ross.abutalabs.com/products/explainerdashboard", "card": {"archived": false, "artifact_type": "library", "description": "Quickly build Explainable AI dashboards that show the inner workings of so-called \"blackbox\" machine learning models.", "domain": ["machine-learning", "data-science", "data-visualization", "web-development"], "enriched": true, "function": ["data-visualization", "machine-learning", "web-framework", "charts"], "health_score": 77, "homepage": "http://explainerdashboard.readthedocs.io", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["oegedijk/explainerdashboard"], "name": "oegedijk/explainerdashboard", "platform": ["python", "cross-platform"], "pushed_at": "2026-02-11T19:52:59+00:00", "repo": "oegedijk/explainerdashboard", "stars": 2510, "tags": ["explainable-ai", "shap", "dash", "plotly", "model-interpretability", "xai", "scikit-learn", "feature-importance", "web-server"], "topics": ["dash", "shap-values", "dashboard", "model-predictions", "data-scientists", "explainer", "interactive-dashboards", "permutation-importances", "shap", "plotly", "inner-workings", "interactive-plots", "xai-library", "xai"], "urls": [], "use_cases": ["explain a blackbox machine learning model with an interactive dashboard", "show shap values and feature contributions for individual predictions", "visualize feature importances and permutation importance for a model", "build a what-if analysis tool for model predictions", "deploy a model explanation web app for stakeholders", "export model explanation dashboards to static html in ci/cd", "combine multiple model dashboards into a single hub"], "what_it_is": "A Python library for quickly building interactive Explainable AI dashboards that explain the inner workings of scikit-learn compatible machine learning models. It provides interactive plots for model performance, feature importances, SHAP values, partial dependence, and individual prediction explanations, deployable as Dash web apps or static HTML.", "when_to_avoid": ["you need explainability for non-tabular models like images or text transformers", "you want a fully custom dashboard UI beyond the library's modular components", "your model is not scikit-learn compatible"], "when_to_choose": ["you have a scikit-learn, xgboost, lightgbm, or catboost model and need explainability visuals with minimal code", "you want an interactive web dashboard or notebook exploration of model behavior without building a frontend", "you need SHAP values, partial dependence, and decision tree visualizations in one tool"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/explainerdashboard", "repo": "oegedijk/explainerdashboard", "role": "main", "score": 74}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "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:06:57.351386+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:57.351386+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:26:26.534361+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd91cff778cf52acf77fbb96224153daf693f5701550fc2ea720cee1ebddb81f", "fetched_at": "2026-08-28T04:06:57.351386+00:00", "kind": "readme", "missing": false, "url": "https://github.com/oegedijk/explainerdashboard"}, {"content_hash": "7bf061d30d3061a28e8a3220544b48512092ac943d06eabda897dd668a7b1a54", "fetched_at": "2026-08-29T10:09:29.416533+00:00", "kind": "registry_pypi", "missing": false, "url": "https://pypi.org/pypi/explainerdashboard/json"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 67, "longevity": 100, "rhythm": 69}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2499, "days_push": 203, "days_rel": 206, "gap_med": 2.0, "n_releases_24m": 9}, "score": 74, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}