https://github.com/Sericthksb/MeChang
· scanned 2026-06-16 00:07 UTC (2 months, 2 weeks ago)
30 raw signals (0 security + 30 graph)
Last scanned 2 months, 2 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 725 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 |
|---|---|---|---|
middleware |
software | healthy | middleware.ts:middleware |
HomeIcon |
software | healthy | src/components/BottomNav.tsx:HomeIcon |
CompassIcon |
software | healthy | src/components/BottomNav.tsx:CompassIcon |
ChatIcon |
software | healthy | src/components/BottomNav.tsx:ChatIcon |
ProfileIcon |
software | healthy | src/components/BottomNav.tsx:ProfileIcon |
BottomNav |
software | healthy | src/components/BottomNav.tsx:BottomNav |
CategoryFilter |
software | healthy | src/components/CategoryFilter.tsx:CategoryFilter |
AnnouncementBanner |
software | healthy | src/components/AnnouncementBanner.tsx:AnnouncementBanner |
formatLanguage |
software | healthy | src/components/ProviderCard.tsx:formatLanguage |
getReviewLabel |
software | healthy | src/components/ProviderCard.tsx:getReviewLabel |
getVerifiedLabel |
software | healthy | src/components/ProviderCard.tsx:getVerifiedLabel |
getFeaturedLabel |
software | healthy | src/components/ProviderCard.tsx:getFeaturedLabel |
getChatLabel |
software | healthy | src/components/ProviderCard.tsx:getChatLabel |
getProfileLabel |
software | healthy | src/components/ProviderCard.tsx:getProfileLabel |
getTierBadge |
software | healthy | src/components/ProviderCard.tsx:getTierBadge |
ProviderCard |
software | healthy | src/components/ProviderCard.tsx:ProviderCard |
categoryTint |
software | healthy | src/components/CategoryIcon.tsx:categoryTint |
CategoryIcon |
software | healthy | src/components/CategoryIcon.tsx:CategoryIcon |
registerAndSubscribe |
software | healthy | src/components/PushPermissionPrompt.tsx:registerAndSubscribe |
syncSubscription |
software | healthy | src/components/PushPermissionPrompt.tsx:syncSubscription |
PushPermissionPrompt |
software | healthy | src/components/PushPermissionPrompt.tsx:PushPermissionPrompt |
handleEnable |
software | healthy | src/components/PushPermissionPrompt.tsx:handleEnable |
handleDismiss |
software | healthy | src/components/PushPermissionPrompt.tsx:handleDismiss |
customerLinks |
software | healthy | src/components/NavDrawer.tsx:customerLinks |
adminLinks |
software | healthy | src/components/NavDrawer.tsx:adminLinks |
providerLinks |
software | healthy | src/components/NavDrawer.tsx:providerLinks |
NavRow |
software | healthy | src/components/NavDrawer.tsx:NavRow |
ComingSoonRow |
software | healthy | src/components/NavDrawer.tsx:ComingSoonRow |
NavDrawer |
software | healthy | src/components/NavDrawer.tsx:NavDrawer |
open |
software | healthy | src/components/NavDrawer.tsx:open |
drawer |
software | healthy | src/components/NavDrawer.tsx:drawer |
getLocalizedPath |
software | healthy | src/components/LanguageSwitcher.tsx:getLocalizedPath |
LanguageSwitcher |
software | healthy | src/components/LanguageSwitcher.tsx:LanguageSwitcher |
switchLocale |
software | healthy | src/components/LanguageSwitcher.tsx:switchLocale |
SearchCategorySheet |
software | healthy | src/components/SearchCategorySheet.tsx:SearchCategorySheet |
handleNavigate |
software | healthy | src/components/SearchCategorySheet.tsx:handleNavigate |
getFileMetadata |
software | healthy | src/components/MessageBubble.tsx:getFileMetadata |
getLocationMetadata |
software | healthy | src/components/MessageBubble.tsx:getLocationMetadata |
MessageBubble |
software | healthy | src/components/MessageBubble.tsx:MessageBubble |
getLinks |
software | healthy | src/components/DesktopNav.tsx:getLinks |
DesktopNav |
software | healthy | src/components/DesktopNav.tsx:DesktopNav |
SearchBar |
software | healthy | src/components/SearchBar.tsx:SearchBar |
handleChange |
software | healthy | src/components/SearchBar.tsx:handleChange |
SignOutButton |
software | healthy | src/components/SignOutButton.tsx:SignOutButton |
handleSignOut |
software | healthy | src/components/SignOutButton.tsx:handleSignOut |
Header |
software | healthy | src/components/Header.tsx:Header |
initial |
software | healthy | src/components/Header.tsx:initial |
CategoryGrid |
software | healthy | src/components/CategoryGrid.tsx:CategoryGrid |
handleTap |
software | healthy | src/components/CategoryGrid.tsx:handleTap |
AdminStatCard |
software | healthy | src/components/admin/AdminStatCard.tsx:AdminStatCard |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
postcss.config.mjs |
software | healthy | postcss.config.mjs |
tailwind.config.ts |
software | healthy | tailwind.config.ts |
CLAUDE.md |
software | healthy | CLAUDE.md |
package.json |
software | healthy | package.json |
package-lock.json |
software | healthy | package-lock.json |
middleware.ts |
software | healthy | middleware.ts |
.env.example |
software | healthy | .env.example |
tsconfig.json |
software | healthy | tsconfig.json |
next.config.ts |
software | healthy | next.config.ts |
th.json |
software | healthy | messages/th.json |
en.json |
software | healthy | messages/en.json |
sw.js |
software | healthy | public/sw.js |
login-actions.test.ts |
software | healthy | src/__tests__/login-actions.test.ts |
setup.ts |
software | healthy | src/__tests__/setup.ts |
database.ts |
software | healthy | src/types/database.ts |
routing.ts |
software | healthy | src/i18n/routing.ts |
request.ts |
software | healthy | src/i18n/request.ts |
BottomNav.tsx |
software | healthy | src/components/BottomNav.tsx |
CategoryFilter.tsx |
software | healthy | src/components/CategoryFilter.tsx |
AnnouncementBanner.tsx |
software | healthy | src/components/AnnouncementBanner.tsx |
ProviderCard.tsx |
software | healthy | src/components/ProviderCard.tsx |
CategoryIcon.tsx |
software | healthy | src/components/CategoryIcon.tsx |
PushPermissionPrompt.tsx |
software | healthy | src/components/PushPermissionPrompt.tsx |
NavDrawer.tsx |
software | healthy | src/components/NavDrawer.tsx |
LanguageSwitcher.tsx |
software | healthy | src/components/LanguageSwitcher.tsx |
SearchCategorySheet.tsx |
software | healthy | src/components/SearchCategorySheet.tsx |
MessageBubble.tsx |
software | healthy | src/components/MessageBubble.tsx |
DesktopNav.tsx |
software | healthy | src/components/DesktopNav.tsx |
SearchBar.tsx |
software | healthy | src/components/SearchBar.tsx |
SignOutButton.tsx |
software | healthy | src/components/SignOutButton.tsx |
Header.tsx |
software | healthy | src/components/Header.tsx |
CategoryGrid.tsx |
software | healthy | src/components/CategoryGrid.tsx |
AdminStatCard.tsx |
software | healthy | src/components/admin/AdminStatCard.tsx |
AdminBottomNav.tsx |
software | healthy | src/components/admin/AdminBottomNav.tsx |
AdminTableControls.tsx |
software | healthy | src/components/admin/AdminTableControls.tsx |
AdminComingSoon.tsx |
software | healthy | src/components/admin/AdminComingSoon.tsx |
AdminPageHeader.tsx |
software | healthy | src/components/admin/AdminPageHeader.tsx |
AdminBadge.tsx |
software | healthy | src/components/admin/AdminBadge.tsx |
AdminSidebar.tsx |
software | healthy | src/components/admin/AdminSidebar.tsx |
globals.css |
software | healthy | src/app/globals.css |
page.tsx |
software | healthy | src/app/page.tsx |
layout.tsx |
software | healthy | src/app/layout.tsx |
route.ts |
software | healthy | src/app/api/push/subscribe/route.ts |
route.ts |
software | healthy | src/app/api/auth/line/route.ts |
route.ts |
software | healthy | src/app/api/auth/line/callback/route.ts |
route.ts |
software | healthy | src/app/api/auth/callback/route.ts |
page.tsx |
software | healthy | src/app/data-deletion/page.tsx |
layout.tsx |
software | healthy | src/app/[locale]/layout.tsx |
page.tsx |
software | healthy | src/app/[locale]/admin/page.tsx |
layout.tsx |
software | healthy | src/app/[locale]/admin/layout.tsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
messages |
software | healthy | messages |
public |
software | healthy | public |
src |
software | healthy | src |
__tests__ |
software | healthy | src/__tests__ |
types |
software | healthy | src/types |
i18n |
software | healthy | src/i18n |
components |
software | healthy | src/components |
admin |
software | healthy | src/components/admin |
app |
software | healthy | src/app |
api |
software | healthy | src/app/api |
push |
software | healthy | src/app/api/push |
subscribe |
software | healthy | src/app/api/push/subscribe |
auth |
software | healthy | src/app/api/auth |
line |
software | healthy | src/app/api/auth/line |
callback |
software | healthy | src/app/api/auth/line/callback |
callback |
software | healthy | src/app/api/auth/callback |
data-deletion |
software | healthy | src/app/data-deletion |
[locale] |
software | healthy | src/app/[locale] |
admin |
software | healthy | src/app/[locale]/admin |
settings |
software | healthy | src/app/[locale]/admin/settings |
users |
software | healthy | src/app/[locale]/admin/users |
[id] |
software | healthy | src/app/[locale]/admin/users/[id] |
verification |
software | healthy | src/app/[locale]/admin/verification |
broadcast |
software | healthy | src/app/[locale]/admin/broadcast |
dashboard |
software | healthy | src/app/[locale]/admin/dashboard |
moderation |
software | healthy | src/app/[locale]/admin/moderation |
chats |
software | healthy | src/app/[locale]/admin/chats |
[id] |
software | healthy | src/app/[locale]/admin/chats/[id] |
providers |
software | healthy | src/app/[locale]/admin/providers |
[id] |
software | healthy | src/app/[locale]/admin/providers/[id] |
reviews |
software | healthy | src/app/[locale]/admin/reviews |
finance |
software | healthy | src/app/[locale]/admin/finance |
home |
software | healthy | src/app/[locale]/admin/home |
categories |
software | healthy | src/app/[locale]/admin/categories |
explore |
software | healthy | src/app/[locale]/admin/explore |
subscriptions |
software | healthy | src/app/[locale]/admin/subscriptions |
disputes |
software | healthy | src/app/[locale]/admin/disputes |
(app) |
software | healthy | src/app/[locale]/(app) |
promotions |
software | healthy | src/app/[locale]/(app)/promotions |
[slug] |
software | healthy | src/app/[locale]/(app)/promotions/[slug] |
explore |
software | healthy | src/app/[locale]/(app)/explore |
(main) |
software | healthy | src/app/[locale]/(main) |
login |
software | healthy | src/app/[locale]/(main)/login |
data-deletion |
software | healthy | src/app/[locale]/(main)/data-deletion |
chat |
software | healthy | src/app/[locale]/(main)/chat |
[id] |
software | healthy | src/app/[locale]/(main)/chat/[id] |
providers |
software | healthy | src/app/[locale]/(main)/providers |
[id] |
software | healthy | src/app/[locale]/(main)/providers/[id] |
services |
software | healthy | src/app/[locale]/(main)/providers/[id]/services |
[serviceId] |
software | healthy | src/app/[locale]/(main)/providers/[id]/services/[serviceId] |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
BottomNav |
frontend | healthy | src/components/BottomNav.tsx |
CategoryFilter |
frontend | healthy | src/components/CategoryFilter.tsx |
ProviderCard |
frontend | healthy | src/components/ProviderCard.tsx |
CategoryIcon |
frontend | healthy | src/components/CategoryIcon.tsx |
PushPermissionPrompt |
frontend | healthy | src/components/PushPermissionPrompt.tsx |
NavDrawer |
frontend | healthy | src/components/NavDrawer.tsx |
LanguageSwitcher |
frontend | healthy | src/components/LanguageSwitcher.tsx |
SearchCategorySheet |
frontend | healthy | src/components/SearchCategorySheet.tsx |
MessageBubble |
frontend | healthy | src/components/MessageBubble.tsx |
DesktopNav |
frontend | healthy | src/components/DesktopNav.tsx |
SearchBar |
frontend | healthy | src/components/SearchBar.tsx |
SignOutButton |
frontend | healthy | src/components/SignOutButton.tsx |
CategoryGrid |
frontend | healthy | src/components/CategoryGrid.tsx |
AdminStatCard |
frontend | healthy | src/components/admin/AdminStatCard.tsx |
AdminBottomNav |
frontend | healthy | src/components/admin/AdminBottomNav.tsx |
AdminTableControls |
frontend | healthy | src/components/admin/AdminTableControls.tsx |
AdminComingSoon |
frontend | healthy | src/components/admin/AdminComingSoon.tsx |
AdminPageHeader |
frontend | healthy | src/components/admin/AdminPageHeader.tsx |
AdminBadge |
frontend | healthy | src/components/admin/AdminBadge.tsx |
AdminSidebar |
frontend | healthy | src/components/admin/AdminSidebar.tsx |
RootPage |
frontend | healthy | src/app/page.tsx |
RootLayout |
frontend | healthy | src/app/layout.tsx |
DataDeletionPage |
frontend | healthy | src/app/data-deletion/page.tsx |
SettingsForm |
frontend | healthy | src/app/[locale]/admin/settings/SettingsForm.tsx |
VerificationQueues |
frontend | healthy | src/app/[locale]/admin/verification/VerificationQueues.tsx |
BroadcastClient |
frontend | healthy | src/app/[locale]/admin/broadcast/BroadcastClient.tsx |
HomeControls |
frontend | healthy | src/app/[locale]/admin/home/HomeControls.tsx |
ExploreControls |
frontend | healthy | src/app/[locale]/admin/explore/ExploreControls.tsx |
HomeClient |
frontend | healthy | src/app/[locale]/(app)/HomeClient.tsx |
ExploreClient |
frontend | healthy | src/app/[locale]/(app)/explore/ExploreClient.tsx |
LoginClient |
frontend | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
DataDeletionPage |
frontend | healthy | src/app/[locale]/(main)/data-deletion/page.tsx |
ChatLayoutClient |
frontend | healthy | src/app/[locale]/(main)/chat/ChatLayoutClient.tsx |
ChatClient |
frontend | healthy | src/app/[locale]/(main)/chat/[id]/ChatClient.tsx |
BackPillClient |
frontend | healthy | src/app/[locale]/(main)/providers/[id]/BackPillClient.tsx |
ServicesGridClient |
frontend | healthy | src/app/[locale]/(main)/providers/[id]/ServicesGridClient.t… |
ProfileClient |
frontend | healthy | src/app/[locale]/(main)/providers/[id]/ProfileClient.tsx |
ProviderProfileTabs |
frontend | healthy | src/app/[locale]/(main)/providers/[id]/ProviderProfileTabs.… |
ServiceChatBar |
frontend | healthy | src/app/[locale]/(main)/providers/[id]/services/[serviceId]… |
RegisterClient |
frontend | healthy | src/app/[locale]/(main)/become-a-provider/RegisterClient.tsx |
TermsPage |
frontend | healthy | src/app/[locale]/(main)/terms/page.tsx |
AdminHome |
frontend | healthy | src/app/[locale]/(main)/profile/AdminHome.tsx |
ProviderHeroClient |
frontend | healthy | src/app/[locale]/(main)/profile/ProviderHeroClient.tsx |
ServicesManagerClient |
frontend | healthy | src/app/[locale]/(main)/profile/ServicesManagerClient.tsx |
ProfileEditClient |
frontend | healthy | src/app/[locale]/(main)/profile/ProfileEditClient.tsx |
ProviderDetailsClient |
frontend | healthy | src/app/[locale]/(main)/profile/ProviderDetailsClient.tsx |
WorkPhotosClient |
frontend | healthy | src/app/[locale]/(main)/profile/WorkPhotosClient.tsx |
PrivacyPage |
frontend | healthy | src/app/[locale]/(main)/privacy/page.tsx |
TermsPage |
frontend | healthy | src/app/terms/page.tsx |
PrivacyPage |
frontend | healthy | src/app/privacy/page.tsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
/page.tsx |
frontend | healthy | src/app/page.tsx |
/data-deletion |
frontend | healthy | src/app/data-deletion/page.tsx |
/[locale]/admin |
frontend | healthy | src/app/[locale]/admin/page.tsx |
/[locale]/admin/settings |
frontend | healthy | src/app/[locale]/admin/settings/page.tsx |
/[locale]/admin/users |
frontend | healthy | src/app/[locale]/admin/users/page.tsx |
/[locale]/admin/users/[id] |
frontend | healthy | src/app/[locale]/admin/users/[id]/page.tsx |
/[locale]/admin/verification |
frontend | healthy | src/app/[locale]/admin/verification/page.tsx |
/[locale]/admin/broadcast |
frontend | healthy | src/app/[locale]/admin/broadcast/page.tsx |
/[locale]/admin/dashboard |
frontend | healthy | src/app/[locale]/admin/dashboard/page.tsx |
/[locale]/admin/moderation |
frontend | healthy | src/app/[locale]/admin/moderation/page.tsx |
/[locale]/admin/chats |
frontend | healthy | src/app/[locale]/admin/chats/page.tsx |
/[locale]/admin/chats/[id] |
frontend | healthy | src/app/[locale]/admin/chats/[id]/page.tsx |
/[locale]/admin/providers |
frontend | healthy | src/app/[locale]/admin/providers/page.tsx |
/[locale]/admin/providers/[id] |
frontend | healthy | src/app/[locale]/admin/providers/[id]/page.tsx |
/[locale]/admin/reviews |
frontend | healthy | src/app/[locale]/admin/reviews/page.tsx |
/[locale]/admin/finance |
frontend | healthy | src/app/[locale]/admin/finance/page.tsx |
/[locale]/admin/home |
frontend | healthy | src/app/[locale]/admin/home/page.tsx |
/[locale]/admin/categories |
frontend | healthy | src/app/[locale]/admin/categories/page.tsx |
/[locale]/admin/explore |
frontend | healthy | src/app/[locale]/admin/explore/page.tsx |
/[locale]/admin/subscriptions |
frontend | healthy | src/app/[locale]/admin/subscriptions/page.tsx |
/[locale]/admin/disputes |
frontend | healthy | src/app/[locale]/admin/disputes/page.tsx |
/[locale]/(app) |
frontend | healthy | src/app/[locale]/(app)/page.tsx |
/[locale]/(app)/promotions/[slug] |
frontend | healthy | src/app/[locale]/(app)/promotions/[slug]/page.tsx |
/[locale]/(app)/explore |
frontend | healthy | src/app/[locale]/(app)/explore/page.tsx |
/[locale]/(main)/login |
frontend | healthy | src/app/[locale]/(main)/login/page.tsx |
/[locale]/(main)/data-deletion |
frontend | healthy | src/app/[locale]/(main)/data-deletion/page.tsx |
/[locale]/(main)/chat |
frontend | healthy | src/app/[locale]/(main)/chat/page.tsx |
/[locale]/(main)/chat/[id] |
frontend | healthy | src/app/[locale]/(main)/chat/[id]/page.tsx |
/[locale]/(main)/providers/[id] |
frontend | healthy | src/app/[locale]/(main)/providers/[id]/page.tsx |
/[locale]/(main)/providers/[id]/services/[serviceId] |
frontend | healthy | src/app/[locale]/(main)/providers/[id]/services/[serviceId]… |
/[locale]/(main)/become-a-provider |
frontend | healthy | src/app/[locale]/(main)/become-a-provider/page.tsx |
/[locale]/(main)/terms |
frontend | healthy | src/app/[locale]/(main)/terms/page.tsx |
/[locale]/(main)/profile |
frontend | healthy | src/app/[locale]/(main)/profile/page.tsx |
/[locale]/(main)/privacy |
frontend | healthy | src/app/[locale]/(main)/privacy/page.tsx |
/[locale]/(main)/pricing |
frontend | healthy | src/app/[locale]/(main)/pricing/page.tsx |
/terms |
frontend | healthy | src/app/terms/page.tsx |
/privacy |
frontend | healthy | src/app/privacy/page.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
63.285.63.631 |
network | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
63.283.63.63 |
network | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
63.285.63.63 |
network | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
629.283.629.63 |
network | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
9.608.391.082 |
network | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
1.058.59.12 |
network | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
301.079.766.038 |
network | healthy | src/app/[locale]/(main)/login/LoginClient.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::src/app/privacy/page.tsx |
security | healthy | src/app/privacy/page.tsx |
auth::src/app/[locale]/(main)/privacy/page.tsx |
security | healthy | src/app/[locale]/(main)/privacy/page.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-uq6167zd |
software | healthy | /tmp/repobility-clone-uq6167zd |
This page is publicly accessible at:
https://repobility.com/scan/35b51c6a-f307-44da-aa85-7b76426078f5/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/35b51c6a-f307-44da-aa85-7b76426078f5/
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.