https://github.com/sam02324/HomeWork-AI
· scanned 2026-06-16 00:00 UTC (2 months, 3 weeks ago)
30 raw signals (0 security + 30 graph)
Last scanned 2 months, 3 weeks ago · v1 · 30 actionable findings from 1 signal source. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 506 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 |
|---|---|---|---|
getR2Client |
software | healthy | fix_and_sync.ts:getR2Client |
run |
software | healthy | fix_and_sync.ts:run |
run |
software | healthy | check_db2.ts:run |
check |
software | healthy | test-db2.js:check |
getR2Client |
software | healthy | manual_sync.ts:getR2Client |
uploadBufferToR2 |
software | healthy | manual_sync.ts:uploadBufferToR2 |
run |
software | healthy | manual_sync.ts:run |
run |
software | healthy | test-db.ts:run |
check |
software | healthy | test-db.js:check |
run |
software | healthy | test-sql.ts:run |
run |
software | healthy | test_drive.ts:run |
getR2Client |
software | healthy | fix_missing_files.ts:getR2Client |
uploadToR2 |
software | healthy | fix_missing_files.ts:uploadToR2 |
run |
software | healthy | fix_missing_files.ts:run |
run |
software | healthy | check_subs.ts:run |
run |
software | healthy | fix_db_state.ts:run |
sleep |
software | healthy | scripts/diagnose3.mjs:sleep |
send |
software | healthy | scripts/diagnose3.mjs:send |
evalJs |
software | healthy | scripts/diagnose3.mjs:evalJs |
sleep |
software | healthy | scripts/verify-landing.mjs:sleep |
send |
software | healthy | scripts/verify-landing.mjs:send |
shot |
software | healthy | scripts/verify-landing.mjs:shot |
scrollTo |
software | healthy | scripts/verify-landing.mjs:scrollTo |
run |
software | healthy | scripts/verify-landing.mjs:run |
docH |
software | healthy | scripts/verify-landing.mjs:docH |
overflow |
software | healthy | scripts/verify-landing.mjs:overflow |
applySecurityHeaders |
software | healthy | src/proxy.ts:applySecurityHeaders |
CommandPalette |
software | healthy | src/components/CommandPalette.tsx:CommandPalette |
down |
software | healthy | src/components/CommandPalette.tsx:down |
handleSelect |
software | healthy | src/components/CommandPalette.tsx:handleSelect |
Sidebar |
software | healthy | src/components/layout/Sidebar.tsx:Sidebar |
isActive |
software | healthy | src/components/layout/Sidebar.tsx:isActive |
getBreadcrumbs |
software | healthy | src/components/layout/Topbar.tsx:getBreadcrumbs |
Topbar |
software | healthy | src/components/layout/Topbar.tsx:Topbar |
EmptyState |
software | healthy | src/components/ui/EmptyState.tsx:EmptyState |
Button |
software | healthy | src/components/ui/Button.tsx:Button |
Skeleton |
software | healthy | src/components/ui/Skeleton.tsx:Skeleton |
SkeletonCard |
software | healthy | src/components/ui/Skeleton.tsx:SkeletonCard |
SkeletonList |
software | healthy | src/components/ui/Skeleton.tsx:SkeletonList |
Modal |
software | healthy | src/components/ui/Modal.tsx:Modal |
onKey |
software | healthy | src/components/ui/Modal.tsx:onKey |
useToast |
software | healthy | src/components/ui/Toast.tsx:useToast |
ToastProvider |
software | healthy | src/components/ui/Toast.tsx:ToastProvider |
Badge |
software | healthy | src/components/ui/Badge.tsx:Badge |
statusTone |
software | healthy | src/components/ui/Badge.tsx:statusTone |
Card |
software | healthy | src/components/ui/Card.tsx:Card |
QueryProvider |
software | healthy | src/components/providers/QueryProvider.tsx:QueryProvider |
getInitialTheme |
software | healthy | src/components/providers/ThemeProvider.tsx:getInitialTheme |
ThemeProvider |
software | healthy | src/components/providers/ThemeProvider.tsx:ThemeProvider |
useTheme |
software | healthy | src/components/providers/ThemeProvider.tsx:useTheme |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
fix_and_sync.ts |
software | healthy | fix_and_sync.ts |
check_db2.ts |
software | healthy | check_db2.ts |
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
package.json |
software | healthy | package.json |
test-db2.js |
software | healthy | test-db2.js |
manual_sync.ts |
software | healthy | manual_sync.ts |
test-db.ts |
software | healthy | test-db.ts |
test-db.js |
software | healthy | test-db.js |
test-sql.ts |
software | healthy | test-sql.ts |
package-lock.json |
software | healthy | package-lock.json |
test_drive.ts |
software | healthy | test_drive.ts |
fix_missing_files.ts |
software | healthy | fix_missing_files.ts |
tsconfig.json |
software | healthy | tsconfig.json |
check_subs.ts |
software | healthy | check_subs.ts |
drizzle.config.ts |
software | healthy | drizzle.config.ts |
fix_db_state.ts |
software | healthy | fix_db_state.ts |
eslint.config.mjs |
software | healthy | eslint.config.mjs |
AGENTS.md |
software | healthy | AGENTS.md |
next.config.ts |
software | healthy | next.config.ts |
diagnose3.mjs |
software | healthy | scripts/diagnose3.mjs |
verify-landing.mjs |
software | healthy | scripts/verify-landing.mjs |
launch.json |
software | healthy | .claude/launch.json |
proxy.ts |
software | healthy | src/proxy.ts |
CommandPalette.tsx |
software | healthy | src/components/CommandPalette.tsx |
CommandPalette.module.css |
software | healthy | src/components/CommandPalette.module.css |
Sidebar.module.css |
software | healthy | src/components/layout/Sidebar.module.css |
Sidebar.tsx |
software | healthy | src/components/layout/Sidebar.tsx |
Topbar.tsx |
software | healthy | src/components/layout/Topbar.tsx |
Topbar.module.css |
software | healthy | src/components/layout/Topbar.module.css |
Modal.module.css |
software | healthy | src/components/ui/Modal.module.css |
EmptyState.tsx |
software | healthy | src/components/ui/EmptyState.tsx |
Button.tsx |
software | healthy | src/components/ui/Button.tsx |
Toast.module.css |
software | healthy | src/components/ui/Toast.module.css |
Card.module.css |
software | healthy | src/components/ui/Card.module.css |
Skeleton.tsx |
software | healthy | src/components/ui/Skeleton.tsx |
Badge.module.css |
software | healthy | src/components/ui/Badge.module.css |
Button.module.css |
software | healthy | src/components/ui/Button.module.css |
Modal.tsx |
software | healthy | src/components/ui/Modal.tsx |
Toast.tsx |
software | healthy | src/components/ui/Toast.tsx |
Badge.tsx |
software | healthy | src/components/ui/Badge.tsx |
EmptyState.module.css |
software | healthy | src/components/ui/EmptyState.module.css |
Card.tsx |
software | healthy | src/components/ui/Card.tsx |
Skeleton.module.css |
software | healthy | src/components/ui/Skeleton.module.css |
QueryProvider.tsx |
software | healthy | src/components/providers/QueryProvider.tsx |
ThemeProvider.tsx |
software | healthy | src/components/providers/ThemeProvider.tsx |
Tilt.tsx |
software | healthy | src/components/motion/Tilt.tsx |
Cursor.tsx |
software | healthy | src/components/motion/Cursor.tsx |
Reveal.tsx |
software | healthy | src/components/motion/Reveal.tsx |
globals.css |
software | healthy | src/app/globals.css |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
scripts |
software | healthy | scripts |
.claude |
software | healthy | .claude |
src |
software | healthy | src |
components |
software | healthy | src/components |
layout |
software | healthy | src/components/layout |
ui |
software | healthy | src/components/ui |
providers |
software | healthy | src/components/providers |
motion |
software | healthy | src/components/motion |
app |
software | healthy | src/app |
api |
software | healthy | src/app/api |
settings |
software | healthy | src/app/api/settings |
sync-folder |
software | healthy | src/app/api/settings/sync-folder |
wipe-data |
software | healthy | src/app/api/settings/wipe-data |
google-sheets |
software | healthy | src/app/api/google-sheets |
upload |
software | healthy | src/app/api/upload |
auth |
software | healthy | src/app/api/auth |
google |
software | healthy | src/app/api/auth/google |
callback |
software | healthy | src/app/api/auth/google/callback |
status |
software | healthy | src/app/api/auth/google/status |
sync-submissions |
software | healthy | src/app/api/sync-submissions |
analytics |
software | healthy | src/app/api/analytics |
student |
software | healthy | src/app/api/analytics/student |
[id] |
software | healthy | src/app/api/analytics/student/[id] |
dashboard |
software | healthy | src/app/api/analytics/dashboard |
google-folders |
software | healthy | src/app/api/google-folders |
grades |
software | healthy | src/app/api/grades |
[id] |
software | healthy | src/app/api/grades/[id] |
classrooms |
software | healthy | src/app/api/classrooms |
[id] |
software | healthy | src/app/api/classrooms/[id] |
students |
software | healthy | src/app/api/classrooms/[id]/students |
students |
software | healthy | src/app/api/students |
assignments |
software | healthy | src/app/api/assignments |
[id] |
software | healthy | src/app/api/assignments/[id] |
grade |
software | healthy | src/app/api/assignments/[id]/grade |
submissions |
software | healthy | src/app/api/assignments/[id]/submissions |
[subId] |
software | healthy | src/app/api/assignments/[id]/submissions/[subId] |
chat |
software | healthy | src/app/api/assignments/[id]/submissions/[subId]/chat |
export |
software | healthy | src/app/api/assignments/[id]/export |
submissions |
software | healthy | src/app/api/submissions |
[id] |
software | healthy | src/app/api/submissions/[id] |
sync-all |
software | healthy | src/app/api/sync-all |
webhooks |
software | healthy | src/app/api/webhooks |
google-form |
software | healthy | src/app/api/webhooks/google-form |
clerk |
software | healthy | src/app/api/webhooks/clerk |
dashboard |
software | healthy | src/app/dashboard |
settings |
software | healthy | src/app/dashboard/settings |
analytics |
software | healthy | src/app/dashboard/analytics |
classrooms |
software | healthy | src/app/dashboard/classrooms |
[id] |
software | healthy | src/app/dashboard/classrooms/[id] |
students |
software | healthy | src/app/dashboard/students |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
QueryProvider |
frontend | healthy | src/components/providers/QueryProvider.tsx |
LandingPage |
frontend | healthy | src/app/page.tsx |
RootLayout |
frontend | healthy | src/app/layout.tsx |
DashboardPage |
frontend | healthy | src/app/dashboard/page.tsx |
DashboardLayout |
frontend | healthy | src/app/dashboard/layout.tsx |
SettingsPage |
frontend | healthy | src/app/dashboard/settings/page.tsx |
AnalyticsPage |
frontend | healthy | src/app/dashboard/analytics/page.tsx |
ClassroomsPage |
frontend | healthy | src/app/dashboard/classrooms/page.tsx |
ClassroomDetailPage |
frontend | healthy | src/app/dashboard/classrooms/[id]/page.tsx |
StudentAnalyticsPage |
frontend | healthy | src/app/dashboard/students/[id]/page.tsx |
AssignmentsPage |
frontend | healthy | src/app/dashboard/assignments/page.tsx |
NewAssignmentPage |
frontend | healthy | src/app/dashboard/assignments/new/page.tsx |
AssignmentDetailsPage |
frontend | healthy | src/app/dashboard/assignments/[id]/page.tsx |
InteractiveReviewPage |
frontend | healthy | src/app/dashboard/assignments/[id]/review/[subId]/page.tsx |
KnowledgeBasePage |
frontend | healthy | src/app/dashboard/knowledge/page.tsx |
SignUpPage |
frontend | healthy | src/app/(auth)/sign-up/[[...sign-up]]/page.tsx |
SignInPage |
frontend | healthy | src/app/(auth)/sign-in/[[...sign-in]]/page.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
/page.tsx |
frontend | healthy | src/app/page.tsx |
/dashboard |
frontend | healthy | src/app/dashboard/page.tsx |
/dashboard/settings |
frontend | healthy | src/app/dashboard/settings/page.tsx |
/dashboard/analytics |
frontend | healthy | src/app/dashboard/analytics/page.tsx |
/dashboard/classrooms |
frontend | healthy | src/app/dashboard/classrooms/page.tsx |
/dashboard/classrooms/[id] |
frontend | healthy | src/app/dashboard/classrooms/[id]/page.tsx |
/dashboard/students/[id] |
frontend | healthy | src/app/dashboard/students/[id]/page.tsx |
/dashboard/assignments |
frontend | healthy | src/app/dashboard/assignments/page.tsx |
/dashboard/assignments/new |
frontend | healthy | src/app/dashboard/assignments/new/page.tsx |
/dashboard/assignments/[id] |
frontend | healthy | src/app/dashboard/assignments/[id]/page.tsx |
/dashboard/assignments/[id]/review/[subId] |
frontend | healthy | src/app/dashboard/assignments/[id]/review/[subId]/page.tsx |
/dashboard/knowledge |
frontend | healthy | src/app/dashboard/knowledge/page.tsx |
/(auth)/sign-up/[[...sign-up]] |
frontend | healthy | src/app/(auth)/sign-up/[[...sign-up]]/page.tsx |
/(auth)/sign-in/[[...sign-in]] |
frontend | healthy | src/app/(auth)/sign-in/[[...sign-in]]/page.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::src/app/api/google-sheets/route.ts |
security | healthy | src/app/api/google-sheets/route.ts |
auth::src/lib/google-sheets.ts |
security | healthy | src/lib/google-sheets.ts |
auth::src/db/schema.ts |
security | healthy | src/db/schema.ts |
auth::src/lib/api-client.ts |
security | healthy | src/lib/api-client.ts |
auth::src/app/api/sync-submissions/route.ts |
security | healthy | src/app/api/sync-submissions/route.ts |
auth::src/lib/ai/grading-service.ts |
security | healthy | src/lib/ai/grading-service.ts |
auth::src/app/api/auth/google/route.ts |
security | healthy | src/app/api/auth/google/route.ts |
auth::src/app/api/auth/google/callback/route.ts |
security | healthy | src/app/api/auth/google/callback/route.ts |
auth::src/app/dashboard/page.tsx |
security | healthy | src/app/dashboard/page.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
assignments |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
classrooms |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
google_tokens |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
grades |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
students |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
submissions |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
users |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
sqlite |
data | healthy | package-lock.json |
redis |
data | healthy | package-lock.json |
postgres |
data | healthy | package-lock.json |
postgresql |
data | healthy | drizzle.config.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
0000_tiny_outlaw_kid.sql |
data | healthy | src/db/migrations/0000_tiny_outlaw_kid.sql |
0002_silent_nick_fury.sql |
data | healthy | src/db/migrations/0002_silent_nick_fury.sql |
0003_add_fk_indexes.sql |
data | healthy | src/db/migrations/0003_add_fk_indexes.sql |
0001_late_warpath.sql |
data | healthy | src/db/migrations/0001_late_warpath.sql |
| Label | Layer | Status | Path |
|---|---|---|---|
port:9226 |
network | healthy | scripts/diagnose3.mjs |
port:9223 |
network | healthy | scripts/verify-landing.mjs |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | fix_and_sync.ts |
vps::gcp |
hardware | healthy | package-lock.json |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-dndylvrt |
software | healthy | /tmp/repobility-clone-dndylvrt |
| Label | Layer | Status | Path |
|---|---|---|---|
to |
software | healthy | src/app/dashboard/assignments/new/page.tsx:to |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | scripts/diagnose3.mjs |
This page is publicly accessible at:
https://repobility.com/scan/4889c5d3-5e7b-4684-877d-690135716d85/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/4889c5d3-5e7b-4684-877d-690135716d85/
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.