{"adoption": {"forks": 484, "observed_at": "2026-08-28T04:06:51.453867+00:00", "stars": 2437}, "canonical_url": "https://ross.abutalabs.com/products/find-sec-bugs", "card": {"archived": false, "artifact_type": "plugin", "description": "The SpotBugs plugin for security audits of Java web applications and Android applications. (Also work with Kotlin, Groovy and Scala projects)", "domain": ["security", "developer-tools", "web-development", "mobile-development"], "enriched": true, "function": ["security", "vulnerability-scanning", "linter", "code-review", "testing"], "health_score": 77, "homepage": "https://find-sec-bugs.github.io/", "language": "Java", "license": "LGPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["find-sec-bugs/find-sec-bugs"], "name": "find-sec-bugs/find-sec-bugs", "platform": ["jvm", "cli", "editor-plugin"], "pushed_at": "2026-03-26T05:29:48+00:00", "repo": "find-sec-bugs/find-sec-bugs", "stars": 2437, "tags": ["spotbugs-plugin", "static-analysis", "taint-analysis", "owasp", "cwe", "java-security", "android-security", "kotlin", "scala", "groovy", "sast", "android"], "topics": ["findbugs", "java", "security-audit", "owasp", "taint-analysis", "code-analysis", "security", "bytecode", "cwe", "static-analysis", "hacktoberfest"], "urls": [], "use_cases": ["find security vulnerabilities in java web applications", "scan android app code for security bugs", "detect sql injection and other injection flaws via taint analysis", "find hardcoded passwords and crypto keys in code", "integrate security scanning into jenkins or sonarqube", "audit kotlin or scala projects for owasp top 10 issues", "run static security analysis in maven builds"], "what_it_is": "Find Security Bugs is a SpotBugs plugin that performs static security analysis of Java bytecode, detecting 144 vulnerability patterns including injections, crypto misuse, and hardcoded credentials. It also works with Kotlin, Groovy, and Scala, and integrates with IDEs, Maven, and CI systems like Jenkins and SonarQube.", "when_to_avoid": ["you need dynamic analysis or runtime protection rather than static scanning", "your codebase is not on the JVM (e.g., pure Python, Go, or C)", "you need a commercial scanner with dedicated support and compliance reporting", "you want deep framework-specific coverage outside the supported Java frameworks"], "when_to_choose": ["you need free, open-source SAST for JVM languages", "you already use SpotBugs, Maven, or an IDE like IntelliJ or Eclipse", "you want OWASP Top 10 and CWE-mapped findings with references", "you need taint analysis for injection vulnerabilities in Java web apps"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/find-sec-bugs", "repo": "find-sec-bugs/find-sec-bugs", "role": "main", "score": 56}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.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:06:51.453867+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:51.453867+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:31:00.291180+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "cd7492e1747498355527aff7afb4361aed1a181c757286ef1d7feac658c5b85f", "fetched_at": "2026-08-28T04:06:51.453867+00:00", "kind": "readme", "missing": false, "url": "https://github.com/find-sec-bugs/find-sec-bugs"}, {"content_hash": "33137240b89c405c36de955c79127d3ac887dcb720e93fb3c4a48d902aa060cc", "fetched_at": "2026-08-29T10:12:16.902558+00:00", "kind": "homepage", "missing": false, "url": "https://find-sec-bugs.github.io/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 74, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5221, "days_push": 160, "days_rel": 442, "gap_med": null, "n_releases_24m": 1}, "score": 56, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}