https://github.com/DavidTang92/topik-master
· scanned 2026-06-17 01:26 UTC (1 month, 2 weeks ago)
8 raw signals (0 security + 8 graph)
Last scanned 1 month, 2 weeks ago · v2 · last Δ +9.5 (diff) · 8 actionable findings from 1 signal source. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 173 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 |
|---|---|---|---|
RootLayout |
software | healthy | app/layout.tsx:RootLayout |
HomePage |
software | healthy | app/page.tsx:HomePage |
MainLayout |
software | healthy | app/(main)/layout.tsx:MainLayout |
DashboardPage |
software | healthy | app/(main)/dashboard/page.tsx:DashboardPage |
PracticePage |
software | healthy | app/(main)/practice/page.tsx:PracticePage |
WrongReviewPage |
software | healthy | app/(main)/practice/review/page.tsx:WrongReviewPage |
reload |
software | healthy | app/(main)/practice/review/page.tsx:reload |
choose |
software | healthy | app/(main)/practice/review/page.tsx:choose |
TopicClient |
software | healthy | app/(main)/practice/topic/[type]/TopicClient.tsx:TopicClient |
choose |
software | healthy | app/(main)/practice/topic/[type]/TopicClient.tsx:choose |
next |
software | healthy | app/(main)/practice/topic/[type]/TopicClient.tsx:next |
resetWith |
software | healthy | app/(main)/practice/topic/[type]/TopicClient.tsx:resetWith |
generateStaticParams |
software | healthy | app/(main)/practice/topic/[type]/page.tsx:generateStaticPar… |
TopicPracticePage |
software | healthy | app/(main)/practice/topic/[type]/page.tsx:TopicPracticePage |
gradeOf |
software | healthy | app/(main)/practice/exam/[id]/ExamClient.tsx:gradeOf |
ExamClient |
software | healthy | app/(main)/practice/exam/[id]/ExamClient.tsx:ExamClient |
retake |
software | healthy | app/(main)/practice/exam/[id]/ExamClient.tsx:retake |
byType |
software | healthy | app/(main)/practice/exam/[id]/ExamClient.tsx:byType |
generateStaticParams |
software | healthy | app/(main)/practice/exam/[id]/page.tsx:generateStaticParams |
ExamPage |
software | healthy | app/(main)/practice/exam/[id]/page.tsx:ExamPage |
ProfilePage |
software | healthy | app/(main)/profile/page.tsx:ProfilePage |
save |
software | healthy | app/(main)/profile/page.tsx:save |
VocabularyPage |
software | healthy | app/(main)/vocabulary/page.tsx:VocabularyPage |
shuffle |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:shuffle |
VocabLevelClient |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:VocabLev… |
WordList |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:WordList |
FlashCards |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:FlashCar… |
rate |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:rate |
Quiz |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:Quiz |
QuizRunner |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:QuizRunn… |
normalize |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:normalize |
grade |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:grade |
pickChoice |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:pickChoi… |
checkSpell |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:checkSpe… |
next |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx:next |
generateStaticParams |
software | healthy | app/(main)/vocabulary/[level]/page.tsx:generateStaticParams |
VocabLevelPage |
software | healthy | app/(main)/vocabulary/[level]/page.tsx:VocabLevelPage |
VocabReviewPage |
software | healthy | app/(main)/vocabulary/review/page.tsx:VocabReviewPage |
rate |
software | healthy | app/(main)/vocabulary/review/page.tsx:rate |
GrammarPage |
software | healthy | app/(main)/grammar/page.tsx:GrammarPage |
GrammarDetailClient |
software | healthy | app/(main)/grammar/[id]/GrammarDetailClient.tsx:GrammarDeta… |
generateStaticParams |
software | healthy | app/(main)/grammar/[id]/page.tsx:generateStaticParams |
GrammarDetailPage |
software | healthy | app/(main)/grammar/[id]/page.tsx:GrammarDetailPage |
ListeningPage |
software | healthy | app/(main)/listening/page.tsx:ListeningPage |
Player |
software | healthy | app/(main)/listening/page.tsx:Player |
playAll |
software | healthy | app/(main)/listening/page.tsx:playAll |
normalize |
software | healthy | app/(main)/listening/page.tsx:normalize |
checkDictation |
software | healthy | app/(main)/listening/page.tsx:checkDictation |
nextDictation |
software | healthy | app/(main)/listening/page.tsx:nextDictation |
LoginPage |
software | healthy | app/(auth)/login/page.tsx:LoginPage |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
tailwind.config.ts |
software | healthy | tailwind.config.ts |
.eslintrc.json |
software | healthy | .eslintrc.json |
next.config.mjs |
software | healthy | next.config.mjs |
package-lock.json |
software | healthy | package-lock.json |
README.md |
software | healthy | README.md |
postcss.config.mjs |
software | healthy | postcss.config.mjs |
package.json |
software | healthy | package.json |
tsconfig.json |
software | healthy | tsconfig.json |
globals.css |
software | healthy | app/globals.css |
layout.tsx |
software | healthy | app/layout.tsx |
page.tsx |
software | healthy | app/page.tsx |
layout.tsx |
software | healthy | app/(main)/layout.tsx |
page.tsx |
software | healthy | app/(main)/dashboard/page.tsx |
page.tsx |
software | healthy | app/(main)/practice/page.tsx |
page.tsx |
software | healthy | app/(main)/practice/review/page.tsx |
TopicClient.tsx |
software | healthy | app/(main)/practice/topic/[type]/TopicClient.tsx |
page.tsx |
software | healthy | app/(main)/practice/topic/[type]/page.tsx |
ExamClient.tsx |
software | healthy | app/(main)/practice/exam/[id]/ExamClient.tsx |
page.tsx |
software | healthy | app/(main)/practice/exam/[id]/page.tsx |
page.tsx |
software | healthy | app/(main)/profile/page.tsx |
page.tsx |
software | healthy | app/(main)/vocabulary/page.tsx |
VocabLevelClient.tsx |
software | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx |
page.tsx |
software | healthy | app/(main)/vocabulary/[level]/page.tsx |
page.tsx |
software | healthy | app/(main)/vocabulary/review/page.tsx |
page.tsx |
software | healthy | app/(main)/grammar/page.tsx |
GrammarDetailClient.tsx |
software | healthy | app/(main)/grammar/[id]/GrammarDetailClient.tsx |
page.tsx |
software | healthy | app/(main)/grammar/[id]/page.tsx |
page.tsx |
software | healthy | app/(main)/listening/page.tsx |
page.tsx |
software | healthy | app/(auth)/login/page.tsx |
page.tsx |
software | healthy | app/(auth)/register/page.tsx |
index.ts |
software | healthy | types/index.ts |
AppShell.tsx |
software | healthy | components/AppShell.tsx |
QuestionCard.tsx |
software | healthy | components/QuestionCard.tsx |
AudioButton.tsx |
software | healthy | components/AudioButton.tsx |
useUserStore.ts |
software | healthy | store/useUserStore.ts |
storage.ts |
software | healthy | lib/storage.ts |
speech.ts |
software | healthy | lib/speech.ts |
srs.ts |
software | healthy | lib/srs.ts |
launch.json |
software | healthy | .claude/launch.json |
.claude/launch.json |
quality | healthy | .claude/launch.json |
| Label | Layer | Status | Path |
|---|---|---|---|
app |
software | healthy | app |
(main) |
software | healthy | app/(main) |
dashboard |
software | healthy | app/(main)/dashboard |
practice |
software | healthy | app/(main)/practice |
review |
software | healthy | app/(main)/practice/review |
topic |
software | healthy | app/(main)/practice/topic |
[type] |
software | healthy | app/(main)/practice/topic/[type] |
exam |
software | healthy | app/(main)/practice/exam |
[id] |
software | healthy | app/(main)/practice/exam/[id] |
profile |
software | healthy | app/(main)/profile |
vocabulary |
software | healthy | app/(main)/vocabulary |
[level] |
software | healthy | app/(main)/vocabulary/[level] |
review |
software | healthy | app/(main)/vocabulary/review |
grammar |
software | healthy | app/(main)/grammar |
[id] |
software | healthy | app/(main)/grammar/[id] |
listening |
software | healthy | app/(main)/listening |
(auth) |
software | healthy | app/(auth) |
login |
software | healthy | app/(auth)/login |
register |
software | healthy | app/(auth)/register |
types |
software | healthy | types |
components |
software | healthy | components |
store |
software | healthy | store |
lib |
software | healthy | lib |
.claude |
software | healthy | .claude |
| Label | Layer | Status | Path |
|---|---|---|---|
RootLayout |
frontend | healthy | app/layout.tsx |
HomePage |
frontend | healthy | app/page.tsx |
MainLayout |
frontend | healthy | app/(main)/layout.tsx |
DashboardPage |
frontend | healthy | app/(main)/dashboard/page.tsx |
PracticePage |
frontend | healthy | app/(main)/practice/page.tsx |
WrongReviewPage |
frontend | healthy | app/(main)/practice/review/page.tsx |
TopicClient |
frontend | healthy | app/(main)/practice/topic/[type]/TopicClient.tsx |
TopicPracticePage |
frontend | healthy | app/(main)/practice/topic/[type]/page.tsx |
ExamClient |
frontend | healthy | app/(main)/practice/exam/[id]/ExamClient.tsx |
ExamPage |
frontend | healthy | app/(main)/practice/exam/[id]/page.tsx |
ProfilePage |
frontend | healthy | app/(main)/profile/page.tsx |
VocabularyPage |
frontend | healthy | app/(main)/vocabulary/page.tsx |
VocabLevelClient |
frontend | healthy | app/(main)/vocabulary/[level]/VocabLevelClient.tsx |
VocabLevelPage |
frontend | healthy | app/(main)/vocabulary/[level]/page.tsx |
VocabReviewPage |
frontend | healthy | app/(main)/vocabulary/review/page.tsx |
GrammarPage |
frontend | healthy | app/(main)/grammar/page.tsx |
GrammarDetailClient |
frontend | healthy | app/(main)/grammar/[id]/GrammarDetailClient.tsx |
GrammarDetailPage |
frontend | healthy | app/(main)/grammar/[id]/page.tsx |
ListeningPage |
frontend | healthy | app/(main)/listening/page.tsx |
LoginPage |
frontend | healthy | app/(auth)/login/page.tsx |
RegisterPage |
frontend | healthy | app/(auth)/register/page.tsx |
AppShell |
frontend | healthy | components/AppShell.tsx |
QuestionCard |
frontend | healthy | components/QuestionCard.tsx |
AudioButton |
frontend | healthy | components/AudioButton.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
DavidTang92__topik-master |
software | healthy | /data/fable5_failed_archive/DavidTang92__topik-master |
| Label | Layer | Status | Path |
|---|---|---|---|
postgresql |
data | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::README.md |
security | healthy | README.md |
This page is publicly accessible at:
https://repobility.com/scan/58a39a5a-c24b-43a7-ae02-5667b47f9534/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/58a39a5a-c24b-43a7-ae02-5667b47f9534/
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.