Scan timing: clone 3.66s · analysis 14.0s · 1.1 MB · GitHub API rate-limit (preflight)
https://github.com/anuraghazra/github-readme-stats
· scanned 2026-06-05 07:27 UTC (5 days, 22 hours ago)
· 10 languages
198 raw signals (82 security + 116 graph) 81st percentile · Javascript · small (2-20K LoC)
Last scanned 5 days, 22 hours ago · v2 · 128 actionable findings from 2 signal sources. 12 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
| Component | Sub-score | Weight | Contribution |
|---|---|---|---|
structure_score |
100.0 | 0.15 | 15.00 |
security_score |
50.1 | 0.25 | 12.53 |
testing_score |
100.0 | 0.20 | 20.00 |
documentation_score |
81.0 | 0.15 | 12.15 |
practices_score |
94.0 | 0.15 | 14.10 |
code_quality |
74.2 | 0.10 | 7.42 |
| Overall | 1.00 | 81.2 |
All 371 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
faker |
software | healthy | tests/api.test.js:faker |
getNumbersFromSvgPathDefinitionAttribute |
software | healthy | tests/renderTopLanguagesCard.test.js:getNumbersFromSvgPathD… |
langPercentFromDonutLayoutSvg |
software | healthy | tests/renderTopLanguagesCard.test.js:langPercentFromDonutLa… |
langPercentFromDonutVerticalLayoutSvg |
software | healthy | tests/renderTopLanguagesCard.test.js:langPercentFromDonutVe… |
langPercentFromPieLayoutSvg |
software | healthy | tests/renderTopLanguagesCard.test.js:langPercentFromPieLayo… |
faker |
software | healthy | tests/pat-info.test.js:faker |
faker |
software | healthy | tests/status.up.test.js:faker |
formatTime |
software | healthy | tests/bench/utils.js:formatTime |
execution |
software | healthy | tests/bench/utils.js:execution |
measurePerformance |
software | healthy | tests/bench/utils.js:measurePerformance |
computeStats |
software | healthy | tests/bench/utils.js:computeStats |
toNumber |
software | healthy | tests/bench/utils.js:toNumber |
p |
software | healthy | tests/bench/utils.js:p |
runAndLogStats |
software | healthy | tests/bench/utils.js:runAndLogStats |
fmt |
software | healthy | tests/bench/utils.js:fmt |
faker |
software | healthy | tests/bench/api.bench.js:faker |
is |
software | healthy | tests/e2e/e2e.test.js:is |
that |
software | healthy | api/status/pat-info.js:that |
is |
software | healthy | api/status/pat-info.js:is |
uptimeFetcher |
software | healthy | api/status/pat-info.js:uptimeFetcher |
getAllPATs |
software | healthy | api/status/pat-info.js:getAllPATs |
getPATInfo |
software | healthy | api/status/pat-info.js:getPATInfo |
isRateLimited |
software | healthy | api/status/pat-info.js:isRateLimited |
filterPATsByStatus |
software | healthy | api/status/pat-info.js:filterPATsByStatus |
that |
software | healthy | api/status/up.js:that |
is |
software | healthy | api/status/up.js:is |
uptimeFetcher |
software | healthy | api/status/up.js:uptimeFetcher |
shieldsUptimeBadge |
software | healthy | api/status/up.js:shieldsUptimeBadge |
getReviewer |
software | healthy | scripts/close-stale-theme-prs.js:getReviewer |
fetchOpenPRs |
software | healthy | scripts/close-stale-theme-prs.js:fetchOpenPRs |
pullsWithLabel |
software | healthy | scripts/close-stale-theme-prs.js:pullsWithLabel |
isStale |
software | healthy | scripts/close-stale-theme-prs.js:isStale |
run |
software | healthy | scripts/close-stale-theme-prs.js:run |
getRepoInfo |
software | healthy | scripts/helpers.js:getRepoInfo |
getGithubToken |
software | healthy | scripts/helpers.js:getGithubToken |
INVALID_REVIEW_COMMENT |
software | healthy | scripts/preview-theme.js:INVALID_REVIEW_COMMENT |
getPrNumber |
software | healthy | scripts/preview-theme.js:getPrNumber |
getCommenter |
software | healthy | scripts/preview-theme.js:getCommenter |
isPreviewComment |
software | healthy | scripts/preview-theme.js:isPreviewComment |
findComment |
software | healthy | scripts/preview-theme.js:findComment |
upsertComment |
software | healthy | scripts/preview-theme.js:upsertComment |
addReview |
software | healthy | scripts/preview-theme.js:addReview |
addLabel |
software | healthy | scripts/preview-theme.js:addLabel |
removeLabel |
software | healthy | scripts/preview-theme.js:removeLabel |
addRemoveLabel |
software | healthy | scripts/preview-theme.js:addRemoveLabel |
getWebAimLink |
software | healthy | scripts/preview-theme.js:getWebAimLink |
getGRSLink |
software | healthy | scripts/preview-theme.js:getGRSLink |
to |
software | healthy | scripts/preview-theme.js:to |
parseJSON |
software | healthy | scripts/preview-theme.js:parseJSON |
themeNameAlreadyExists |
software | healthy | scripts/preview-theme.js:themeNameAlreadyExists |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
.prettierrc.json |
software | healthy | .prettierrc.json |
jest.config.js |
software | warning | jest.config.js |
vercel.json |
software | healthy | vercel.json |
express.js |
software | warning | express.js |
package.json |
software | healthy | package.json |
CONTRIBUTING.md |
software | healthy | CONTRIBUTING.md |
jest.e2e.config.js |
software | warning | jest.e2e.config.js |
package-lock.json |
software | healthy | package-lock.json |
.eslintrc.json |
software | healthy | .eslintrc.json |
jest.bench.config.js |
software | warning | jest.bench.config.js |
CODE_OF_CONDUCT.md |
software | healthy | CODE_OF_CONDUCT.md |
SECURITY.md |
software | healthy | SECURITY.md |
codecov.yml |
software | healthy | codecov.yml |
readme.md |
software | healthy | readme.md |
devcontainer.json |
software | healthy | .devcontainer/devcontainer.json |
render.test.js |
software | warning | tests/render.test.js |
top-langs.test.js |
software | warning | tests/top-langs.test.js |
renderGistCard.test.js |
software | warning | tests/renderGistCard.test.js |
calculateRank.test.js |
software | warning | tests/calculateRank.test.js |
fetchRepo.test.js |
software | warning | tests/fetchRepo.test.js |
renderRepoCard.test.js |
software | warning | tests/renderRepoCard.test.js |
api.test.js |
software | healthy | tests/api.test.js |
html.test.js |
software | warning | tests/html.test.js |
renderTopLanguagesCard.test.js |
software | healthy | tests/renderTopLanguagesCard.test.js |
pin.test.js |
software | warning | tests/pin.test.js |
flexLayout.test.js |
software | warning | tests/flexLayout.test.js |
pat-info.test.js |
software | healthy | tests/pat-info.test.js |
wakatime.test.js |
software | warning | tests/wakatime.test.js |
ops.test.js |
software | warning | tests/ops.test.js |
fmt.test.js |
software | warning | tests/fmt.test.js |
fetchStats.test.js |
software | warning | tests/fetchStats.test.js |
i18n.test.js |
software | warning | tests/i18n.test.js |
status.up.test.js |
software | healthy | tests/status.up.test.js |
fetchGist.test.js |
software | warning | tests/fetchGist.test.js |
fetchWakatime.test.js |
software | warning | tests/fetchWakatime.test.js |
gist.test.js |
software | warning | tests/gist.test.js |
renderStatsCard.test.js |
software | warning | tests/renderStatsCard.test.js |
fetchTopLanguages.test.js |
software | warning | tests/fetchTopLanguages.test.js |
card.test.js |
software | warning | tests/card.test.js |
renderWakatimeCard.test.js |
software | warning | tests/renderWakatimeCard.test.js |
retryer.test.js |
software | warning | tests/retryer.test.js |
color.test.js |
software | warning | tests/color.test.js |
calculateRank.bench.js |
software | warning | tests/bench/calculateRank.bench.js |
pin.bench.js |
software | warning | tests/bench/pin.bench.js |
gist.bench.js |
software | warning | tests/bench/gist.bench.js |
utils.js |
software | healthy | tests/bench/utils.js |
api.bench.js |
software | healthy | tests/bench/api.bench.js |
e2e.test.js |
software | healthy | tests/e2e/e2e.test.js |
wakatime.js |
software | warning | api/wakatime.js |
gist.js |
software | warning | api/gist.js |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
.devcontainer |
software | healthy | .devcontainer |
tests |
software | healthy | tests |
bench |
software | healthy | tests/bench |
e2e |
software | healthy | tests/e2e |
api |
software | healthy | api |
status |
software | healthy | api/status |
scripts |
software | healthy | scripts |
themes |
software | healthy | themes |
.github |
software | healthy | .github |
ISSUE_TEMPLATE |
software | healthy | .github/ISSUE_TEMPLATE |
workflows |
software | healthy | .github/workflows |
src |
software | healthy | src |
common |
software | healthy | src/common |
fetchers |
software | healthy | src/fetchers |
cards |
software | healthy | src/cards |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::test |
cicd | healthy | .github/workflows/test.yml |
gha::prs-cache-clean |
cicd | healthy | .github/workflows/prs-cache-clean.yml |
gha::empty-issues-closer |
cicd | healthy | .github/workflows/empty-issues-closer.yml |
gha::codeql-analysis |
cicd | healthy | .github/workflows/codeql-analysis.yml |
gha::theme-prs-closer |
cicd | healthy | .github/workflows/theme-prs-closer.yml |
gha::top-issues-dashboard |
cicd | healthy | .github/workflows/top-issues-dashboard.yml |
gha::preview-theme |
cicd | healthy | .github/workflows/preview-theme.yml |
gha::label-pr |
cicd | healthy | .github/workflows/label-pr.yml |
gha::ossf-analysis |
cicd | healthy | .github/workflows/ossf-analysis.yml |
gha::stale-theme-pr-closer |
cicd | healthy | .github/workflows/stale-theme-pr-closer.yml |
gha::generate-theme-doc |
cicd | healthy | .github/workflows/generate-theme-doc.yml |
gha::update-langs |
cicd | healthy | .github/workflows/update-langs.yml |
gha::deploy-prep |
cicd | healthy | .github/workflows/deploy-prep.yml |
gha::e2e-test |
cicd | healthy | .github/workflows/e2e-test.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
build |
cicd | healthy | .github/workflows/test.yml |
cleanup |
cicd | healthy | .github/workflows/prs-cache-clean.yml |
closeEmptyIssuesAndTemplates |
cicd | healthy | .github/workflows/empty-issues-closer.yml |
CodeQL-Build |
cicd | healthy | .github/workflows/codeql-analysis.yml |
close-prs |
cicd | healthy | .github/workflows/theme-prs-closer.yml |
showAndLabelTopIssues |
cicd | healthy | .github/workflows/top-issues-dashboard.yml |
previewTheme |
cicd | healthy | .github/workflows/preview-theme.yml |
triage |
cicd | healthy | .github/workflows/label-pr.yml |
analysis |
cicd | healthy | .github/workflows/ossf-analysis.yml |
closeOldThemePrs |
cicd | healthy | .github/workflows/stale-theme-pr-closer.yml |
generateThemeDoc |
cicd | healthy | .github/workflows/generate-theme-doc.yml |
updateLanguages |
cicd | healthy | .github/workflows/update-langs.yml |
config |
cicd | healthy | .github/workflows/deploy-prep.yml |
e2eTests |
cicd | healthy | .github/workflows/e2e-test.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
138.112.25.25 |
network | healthy | src/common/icons.js |
4.458.75.75 |
network | healthy | src/common/icons.js |
1.5.75.75 |
network | healthy | src/common/icons.js |
1.7.75.75 |
network | healthy | src/common/icons.js |
1.275.749.749 |
network | healthy | src/common/icons.js |
1.042.751.751 |
network | healthy | src/common/icons.js |
1.042.018.751 |
network | healthy | src/common/icons.js |
27.38.01.53 |
network | healthy | src/common/icons.js |
34.19.73.9 |
network | healthy | src/common/icons.js |
1.13.16.45 |
network | healthy | src/common/icons.js |
| Label | Layer | Status | Path |
|---|---|---|---|
IncorrectJsonFormatError |
software | healthy | scripts/preview-theme.js:IncorrectJsonFormatError |
I18n |
software | healthy | src/common/I18n.js:I18n |
to |
software | healthy | src/common/error.js:to |
CustomError |
software | healthy | src/common/error.js:CustomError |
MissingParamError |
software | healthy | src/common/error.js:MissingParamError |
Card |
software | healthy | src/common/Card.js:Card |
| Label | Layer | Status | Path |
|---|---|---|---|
GET / |
api | healthy | express.js |
GET /pin |
api | healthy | express.js |
GET /top-langs |
api | healthy | express.js |
GET /wakatime |
api | healthy | express.js |
GET /gist |
api | healthy | express.js |
USE /api |
api | healthy | express.js |
| Label | Layer | Status | Path |
|---|---|---|---|
GH_REPO |
cicd | healthy | — |
PERSONAL_TOKEN |
cicd | healthy | — |
GITHUB_TOKEN |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
haproxy |
network | healthy | src/common/languageColors.json |
nginx |
network | healthy | src/common/languageColors.json |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-6o8r_zb3 |
software | healthy | /tmp/repobility-clone-6o8r_zb3 |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | src/common/languageColors.json |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::.github/workflows/ossf-analysis.yml |
security | healthy | .github/workflows/ossf-analysis.yml |
This page is publicly accessible at:
https://repobility.com/scan/921a7bd3-52f3-45e5-8881-57256431480a/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/921a7bd3-52f3-45e5-8881-57256431480a/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.