Scan timing: clone 1.45s · analysis 54.51s · 3.0 MB · GitHub API rate-limit (preflight)
https://github.com/abi/screenshot-to-code
· scanned 2026-06-05 08:07 UTC (5 days, 19 hours ago)
· 10 languages
549 raw signals (345 security + 204 graph) 42nd percentile · Python · medium (20-100K LoC)
Last scanned 5 days, 19 hours ago · v2 · 322 actionable findings from 2 signal sources. 125 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 |
60.0 | 0.15 | 9.00 |
security_score |
28.8 | 0.25 | 7.20 |
testing_score |
70.0 | 0.20 | 14.00 |
documentation_score |
62.0 | 0.15 | 9.30 |
practices_score |
54.0 | 0.15 | 8.10 |
code_quality |
60.5 | 0.10 | 6.05 |
| Overall | 1.00 | 53.6 |
Showing 266 of 322 actionable findings. 447 raw detector signals were grouped into reader-sized issues. Click TP / FP to vote on a finding's accuracy — votes adjust the confidence weighting and improve detection across the platform.
frontend/yarn.lockpackage-lock.jsonyarn.lockbackend/poetry.lock
package-lock.jsonyarn.lockbackend/routes/evals.py:317
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
frontend/yarn.lock
backend/agent/engine.py:94, 95, 98, 99, 125, 142, 143, 146, +10 more (18 hits)backend/routes/generate_code.py:139, 276, 281, 284, 292, 395, 548 (7 hits)backend/poetry.lock
frontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
frontend/yarn.lock
frontend/Dockerfile:16
CI/CD securitycontainers
backend/Dockerfile:21
CI/CD securitycontainers
frontend/Dockerfile:1
backend/Dockerfile:1
backend/routes/design_systems.py:153
backend/routes/design_systems.py:126
backend/routes/design_systems.py:110
backend/routes/export.py:451
backend/routes/screenshot.py:86
backend/routes/evals.py:233
backend/routes/evals.py:261
backend/routes/evals.py:286
frontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lockpackage-lock.jsonyarn.lockpackage-lock.jsonyarn.lockpackage-lock.jsonyarn.lockpackage-lock.jsonyarn.lockpackage-lock.jsonyarn.lockfrontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lockpackage-lock.jsonyarn.lockbackend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/.pre-commit-config.yaml:4
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/yarn.lock
frontend/yarn.lockpackage-lock.jsonyarn.lockbackend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/yarn.lock
frontend/yarn.lock
frontend/yarn.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/yarn.lock
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
backend/routes/design_systems.py:152
securityAuth fastapi unauth mutation
backend/routes/design_systems.py:125
securityAuth fastapi unauth mutation
backend/routes/screenshot.py:85
securityAuth fastapi unauth mutation
backend/routes/evals.py:232
securityAuth fastapi unauth mutation
backend/routes/design_systems.py:109
securityAuth fastapi unauth mutation
backend/routes/export.py:450
securityAuth fastapi unauth mutation
backend/routes/evals.py:285
securityAuth fastapi unauth mutation
backend/routes/evals.py:260
securityAuth fastapi unauth mutation
frontend/yarn.lock
frontend/yarn.lock
frontend/src/components/history/HistoryDisplay.tsx:70
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lockpackage-lock.jsonyarn.lockbackend/evals/runner.py:89, 329 (2 hits)backend/routes/generate_code.py:647, 797 (2 hits)backend/agent/tools/parsing.py:73backend/fs_logging/gemini_prompt_report.py:100backend/fs_logging/openai_turn_inputs.py:205backend/routes/evals.py:381backend/routes/export.py:355backend/run_image_generation_evals.py:203.dockerignore
CI/CD securitycontainers
frontend/Dockerfile:1
CI/CD securitycontainers
backend/Dockerfile:1
CI/CD securitycontainers
frontend/src/components/TermsOfServiceDialog.tsx:55
frontend/yarn.lock
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockbackend/poetry.lock
backend/poetry.lock
package-lock.jsonyarn.lockpackage-lock.jsonyarn.lockbackend/poetry.lock
frontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
frontend/yarn.lock
frontend/yarn.lock
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/yarn.lockpackage-lock.jsonyarn.lockbackend/poetry.lock
frontend/yarn.lockpackage-lock.jsonyarn.lockbackend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/yarn.lock
frontend/yarn.lock
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
frontend/yarn.lock
frontend/yarn.lock
frontend/yarn.lock
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
frontend/yarn.lock
frontend/yarn.lock
frontend/yarn.lock
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/yarn.lock
backend/uploaded_assets/store.py:177
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/yarn.lock
docker-compose.yml:3, 21 (2 hits)docker-compose.yml:3, 21 (2 hits)backend/Dockerfile:6
CI/CD securitycontainers
frontend/src/components/unified-input/UnifiedInputPane.tsx:10, 36 (2 hits)frontend/src/components/unified-input/tabs/UploadTab.tsx:11, 253 (2 hits)frontend/src/components/evals/PairwiseEvalsPage.tsx:63frontend/src/components/unified-input/tabs/TextTab.tsx:43frontend/src/components/unified-input/tabs/UrlTab.tsx:86package-lock.jsonyarn.lockfrontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
frontend/package.json
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
backend/poetry.lock
frontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/pnpm-lock.yamlfrontend/yarn.lockpackage-lock.jsonyarn.lockfrontend/Dockerfile:1
containersPinned dependencies
backend/Dockerfile:1
containersPinned dependencies
frontend/src/components/preview/PreviewPane.tsx:28
Document write
repo-level (3 hits)backend/fs_logging/openai_input_compare.py:234
backend/utils.py:8
backend/routes/generate_code.py:570
backend/routes/generate_code.py:150
backend/debug/DebugFileWriter.py:22
This page is publicly accessible at:
https://repobility.com/scan/0f33f770-51d1-4d73-963a-4fec09e7a7fc/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/0f33f770-51d1-4d73-963a-4fec09e7a7fc/
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.