{"adoption": {"forks": 675, "observed_at": "2026-08-28T04:08:29.841220+00:00", "stars": 3925}, "canonical_url": "https://ross.abutalabs.com/products/spotbugs", "card": {"archived": false, "artifact_type": "cli-tool", "description": "SpotBugs is FindBugs' successor. A tool for static analysis to look for bugs in Java code.", "domain": ["developer-tools", "testing", "security"], "enriched": true, "function": ["linter", "security", "code-review", "developer-tools"], "health_score": 100, "homepage": "https://spotbugs.github.io/", "language": "Java", "license": "LGPL-2.1", "license_family": "copyleft", "maturity": "active", "member_repos": ["spotbugs/spotbugs"], "name": "spotbugs/spotbugs", "platform": ["jvm", "cross-platform", "cli"], "pushed_at": "2026-08-25T14:58:04+00:00", "repo": "spotbugs/spotbugs", "stars": 3925, "tags": ["static-analysis", "findbugs-successor", "java", "bug-detection", "gradle-plugin", "maven-plugin", "eclipse-plugin"], "topics": ["findbugs", "static-analysis", "code-analysis", "static-code-analysis", "linter", "hacktoberfest"], "urls": [], "use_cases": ["find bugs in java code with static analysis", "replace findbugs since it is abandoned", "run static code analysis in gradle build", "detect null pointer dereferences and bad practices in java", "scan java project for security vulnerabilities with find-sec-bugs", "integrate bug detection into maven or ant builds", "check java code quality in CI pipeline"], "what_it_is": "SpotBugs is a static analysis tool that finds bugs in Java bytecode, serving as the community-maintained successor to the abandoned FindBugs project. It detects over 400 bug patterns and integrates with build tools and IDEs like Maven, Gradle, Eclipse, and IntelliJ IDEA.", "when_to_avoid": ["your project is not on the JVM (it analyzes Java bytecode only)", "you need dynamic analysis, runtime profiling, or test coverage rather than static checks", "you want a full SonarQube-style quality platform rather than a focused bug finder"], "when_to_choose": ["you maintain a Java or JVM-language codebase and want automated bug detection", "you need a maintained replacement for FindBugs", "you want static analysis integrated into Maven, Gradle, Ant, or your IDE", "you need extensible bug detectors via plugins like fb-contrib or find-sec-bugs"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/spotbugs", "repo": "spotbugs/spotbugs", "role": "main", "score": 99}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "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:08:29.841220+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:29.841220+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:24:44.575271+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e07826324b229638581b99412c2560d265473a75e232fdd0f129f7af402ef3c0", "fetched_at": "2026-08-28T04:08:29.841220+00:00", "kind": "readme", "missing": false, "url": "https://github.com/spotbugs/spotbugs"}, {"content_hash": "53356d2b92b5b94b5b9a228bf1e56ebb7cd9992cabdbd722088450a1d58278cb", "fetched_at": "2026-08-29T09:18:37.277782+00:00", "kind": "homepage", "missing": false, "url": "https://spotbugs.github.io/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 98}, "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": 3589, "days_push": 8, "days_rel": 13, "gap_med": 24, "n_releases_24m": 14}, "score": 99, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}