https://github.com/AhmedMuhammedElsaid/Nour-Platform
· scanned 2026-06-17 01:14 UTC (1 month, 2 weeks ago)
69 raw signals (0 security + 69 graph)
Last scanned 1 month, 2 weeks ago · v2 · last Δ +1.5 (diff) · 67 actionable findings from 1 signal source. 2 repeated signals grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 1509 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 |
|---|---|---|---|
isPlainObject |
software | healthy | packages/api/src/utils/mongo-update.ts:isPlainObject |
flattenLocaleUpdate |
software | healthy | packages/api/src/utils/mongo-update.ts:flattenLocaleUpdate |
newObjectIdString |
software | healthy | packages/api/src/utils/id.ts:newObjectIdString |
isAllowedMime |
software | healthy | packages/api/src/media/r2-client.ts:isAllowedMime |
getR2Config |
software | healthy | packages/api/src/media/r2-client.ts:getR2Config |
getClient |
software | healthy | packages/api/src/media/r2-client.ts:getClient |
createPresignedUpload |
software | healthy | packages/api/src/media/r2-client.ts:createPresignedUpload |
headObject |
software | healthy | packages/api/src/media/r2-client.ts:headObject |
isNotFoundError |
software | healthy | packages/api/src/media/r2-client.ts:isNotFoundError |
hashPassword |
software | healthy | packages/api/src/auth/password.ts:hashPassword |
verifyPassword |
software | healthy | packages/api/src/auth/password.ts:verifyPassword |
requireSession |
software | healthy | packages/api/src/auth/require-session.ts:requireSession |
getDb |
software | healthy | packages/api/src/db/client.ts:getDb |
disconnectDb |
software | healthy | packages/api/src/db/client.ts:disconnectDb |
dropIndexIfExists |
software | healthy | packages/api/src/db/migrations/0004-i18n-indexes.ts:dropInd… |
up |
software | healthy | packages/api/src/db/migrations/0004-i18n-indexes.ts:up |
up |
software | healthy | packages/api/src/db/migrations/0001-indexes.ts:up |
up |
software | healthy | packages/api/src/db/migrations/0008-azkar-indexes.ts:up |
up |
software | healthy | packages/api/src/db/migrations/0007-playlist-order.ts:up |
backfillSlugs |
software | healthy | packages/api/src/db/migrations/0005-embedded-locale.ts:back… |
up |
software | healthy | packages/api/src/db/migrations/0005-embedded-locale.ts:up |
up |
software | healthy | packages/api/src/db/migrations/0002-category-indexes.ts:up |
dbHasEmbeddedLocaleDocs |
software | healthy | packages/api/src/db/migrations/0003-i18n-backfill.ts:dbHasE… |
up |
software | healthy | packages/api/src/db/migrations/0003-i18n-backfill.ts:up |
up |
software | healthy | packages/api/src/db/migrations/0009-quran-indexes.ts:up |
up |
software | healthy | packages/api/src/db/migrations/0006-search-indexes.ts:up |
cursor |
software | healthy | packages/api/src/db/migrations/0003-i18n-backfill.test.ts:c… |
up |
software | healthy | packages/api/src/db/migrations/0010-quran-tafsir-indexes.ts… |
findAll |
software | healthy | packages/api/src/repositories/category.repo.ts:findAll |
findBySlug |
software | healthy | packages/api/src/repositories/category.repo.ts:findBySlug |
findById |
software | healthy | packages/api/src/repositories/category.repo.ts:findById |
create |
software | healthy | packages/api/src/repositories/category.repo.ts:create |
updateById |
software | healthy | packages/api/src/repositories/category.repo.ts:updateById |
deleteById |
software | healthy | packages/api/src/repositories/category.repo.ts:deleteById |
findAllSurahs |
software | healthy | packages/api/src/repositories/quran.repo.ts:findAllSurahs |
findSurah |
software | healthy | packages/api/src/repositories/quran.repo.ts:findSurah |
findAyahsBySurah |
software | healthy | packages/api/src/repositories/quran.repo.ts:findAyahsBySurah |
findAyahsByJuz |
software | healthy | packages/api/src/repositories/quran.repo.ts:findAyahsByJuz |
findTranslationsForGlobalRange |
software | healthy | packages/api/src/repositories/quran.repo.ts:findTranslation… |
findEditions |
software | healthy | packages/api/src/repositories/quran.repo.ts:findEditions |
findEditionBySlug |
software | healthy | packages/api/src/repositories/quran.repo.ts:findEditionBySl… |
findReciters |
software | healthy | packages/api/src/repositories/quran.repo.ts:findReciters |
findReciterBySlug |
software | healthy | packages/api/src/repositories/quran.repo.ts:findReciterBySl… |
findTafsir |
software | healthy | packages/api/src/repositories/quran.repo.ts:findTafsir |
findEditionsByType |
software | healthy | packages/api/src/repositories/quran.repo.ts:findEditionsByT… |
findPublishedAzkar |
software | healthy | packages/api/src/repositories/azkar.repo.ts:findPublishedAz… |
findAllAzkar |
software | healthy | packages/api/src/repositories/azkar.repo.ts:findAllAzkar |
findAzkarBySlug |
software | healthy | packages/api/src/repositories/azkar.repo.ts:findAzkarBySlug |
findAzkarById |
software | healthy | packages/api/src/repositories/azkar.repo.ts:findAzkarById |
createAzkar |
software | healthy | packages/api/src/repositories/azkar.repo.ts:createAzkar |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
.env.example |
software | healthy | .env.example |
deploy.md |
software | healthy | deploy.md |
pnpm-workspace.yaml |
software | healthy | pnpm-workspace.yaml |
deploy-azkar.md |
software | healthy | deploy-azkar.md |
.prettierrc.json |
software | healthy | .prettierrc.json |
playwright.config.ts |
software | healthy | playwright.config.ts |
README.md |
software | healthy | README.md |
APP_CONTEXT.md |
software | healthy | APP_CONTEXT.md |
app_review_feedback.md |
software | healthy | app_review_feedback.md |
localization.md |
software | healthy | localization.md |
package.json |
software | healthy | package.json |
turbo.json |
software | healthy | turbo.json |
PLAN.md |
software | healthy | PLAN.md |
db-migration.md |
software | healthy | db-migration.md |
deployNew.md |
software | healthy | deployNew.md |
pnpm-lock.yaml |
software | healthy | pnpm-lock.yaml |
design_feedback.md |
software | healthy | design_feedback.md |
base.json |
software | healthy | packages/tsconfig/base.json |
node.json |
software | healthy | packages/tsconfig/node.json |
package.json |
software | healthy | packages/tsconfig/package.json |
nextjs.json |
software | healthy | packages/tsconfig/nextjs.json |
vitest.config.ts |
software | healthy | packages/api/vitest.config.ts |
eslint.config.mjs |
software | healthy | packages/api/eslint.config.mjs |
vitest.setup.ts |
software | healthy | packages/api/vitest.setup.ts |
package.json |
software | healthy | packages/api/package.json |
tsconfig.json |
software | healthy | packages/api/tsconfig.json |
index.ts |
software | healthy | packages/api/src/index.ts |
slug.ts |
software | healthy | packages/api/src/utils/slug.ts |
slug.test.ts |
software | healthy | packages/api/src/utils/slug.test.ts |
mongo-update.test.ts |
software | healthy | packages/api/src/utils/mongo-update.test.ts |
mongo-update.ts |
software | healthy | packages/api/src/utils/mongo-update.ts |
id.ts |
software | healthy | packages/api/src/utils/id.ts |
r2-client.ts |
software | healthy | packages/api/src/media/r2-client.ts |
media.ts |
software | healthy | packages/api/src/schemas/media.ts |
track.ts |
software | healthy | packages/api/src/schemas/track.ts |
azkar.test.ts |
software | healthy | packages/api/src/schemas/azkar.test.ts |
search.ts |
software | healthy | packages/api/src/schemas/search.ts |
locale.ts |
software | healthy | packages/api/src/schemas/locale.ts |
azkar.ts |
software | healthy | packages/api/src/schemas/azkar.ts |
prayer-times.test.ts |
software | healthy | packages/api/src/schemas/prayer-times.test.ts |
playlist.ts |
software | healthy | packages/api/src/schemas/playlist.ts |
prayer-times.ts |
software | healthy | packages/api/src/schemas/prayer-times.ts |
embed-hosts.test.ts |
software | healthy | packages/api/src/schemas/embed-hosts.test.ts |
user.ts |
software | healthy | packages/api/src/schemas/user.ts |
category.ts |
software | healthy | packages/api/src/schemas/category.ts |
quran.ts |
software | healthy | packages/api/src/schemas/quran.ts |
next-auth.d.ts |
software | healthy | packages/api/src/types/next-auth.d.ts |
index.ts |
software | healthy | packages/api/src/auth/index.ts |
config.edge.ts |
software | healthy | packages/api/src/auth/config.edge.ts |
password.ts |
software | healthy | packages/api/src/auth/password.ts |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
packages |
software | healthy | packages |
tsconfig |
software | healthy | packages/tsconfig |
api |
software | healthy | packages/api |
src |
software | healthy | packages/api/src |
utils |
software | healthy | packages/api/src/utils |
media |
software | healthy | packages/api/src/media |
schemas |
software | healthy | packages/api/src/schemas |
types |
software | healthy | packages/api/src/types |
auth |
software | healthy | packages/api/src/auth |
db |
software | healthy | packages/api/src/db |
models |
software | healthy | packages/api/src/db/models |
migrations |
software | healthy | packages/api/src/db/migrations |
repositories |
software | healthy | packages/api/src/repositories |
errors |
software | healthy | packages/api/src/errors |
services |
software | healthy | packages/api/src/services |
cache |
software | healthy | packages/api/src/cache |
eslint-config |
software | healthy | packages/eslint-config |
shared-core |
software | healthy | packages/shared-core |
src |
software | healthy | packages/shared-core/src |
utils |
software | healthy | packages/shared-core/src/utils |
schemas |
software | healthy | packages/shared-core/src/schemas |
prayer-times |
software | healthy | packages/shared-core/src/prayer-times |
quran |
software | healthy | packages/shared-core/src/quran |
config |
software | healthy | packages/config |
src |
software | healthy | packages/config/src |
ui |
software | healthy | packages/ui |
src |
software | healthy | packages/ui/src |
hooks |
software | healthy | packages/ui/src/hooks |
blocks |
software | healthy | packages/ui/src/blocks |
audio-player |
software | healthy | packages/ui/src/blocks/audio-player |
primitives |
software | healthy | packages/ui/src/primitives |
patterns |
software | healthy | packages/ui/src/patterns |
lib |
software | healthy | packages/ui/src/lib |
styles |
software | healthy | packages/ui/src/styles |
tests |
software | healthy | tests |
e2e |
software | healthy | tests/e2e |
scripts |
software | healthy | scripts |
.github |
software | healthy | .github |
workflows |
software | healthy | .github/workflows |
docs |
software | healthy | docs |
superpowers |
software | healthy | docs/superpowers |
specs |
software | healthy | docs/superpowers/specs |
plans |
software | healthy | docs/superpowers/plans |
adr |
software | healthy | docs/adr |
apps |
software | healthy | apps |
admin |
software | healthy | apps/admin |
app |
software | healthy | apps/admin/app |
api |
software | healthy | apps/admin/app/api |
media |
software | healthy | apps/admin/app/api/media |
confirm |
software | healthy | apps/admin/app/api/media/confirm |
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 | apps/admin/app/page.tsx |
/adhkar |
frontend | healthy | apps/admin/app/adhkar/page.tsx |
/adhkar/[id]/edit |
frontend | healthy | apps/admin/app/adhkar/[id]/edit/page.tsx |
/adhkar/new |
frontend | healthy | apps/admin/app/adhkar/new/page.tsx |
/categories |
frontend | healthy | apps/admin/app/categories/page.tsx |
/categories/[id]/edit |
frontend | healthy | apps/admin/app/categories/[id]/edit/page.tsx |
/categories/new |
frontend | healthy | apps/admin/app/categories/new/page.tsx |
/(auth)/login |
frontend | healthy | apps/admin/app/(auth)/login/page.tsx |
/playlists |
frontend | healthy | apps/admin/app/playlists/page.tsx |
/playlists/[id]/edit |
frontend | healthy | apps/admin/app/playlists/[id]/edit/page.tsx |
/playlists/new |
frontend | healthy | apps/admin/app/playlists/new/page.tsx |
/[locale] |
frontend | healthy | apps/web/app/[locale]/page.tsx |
/[locale]/prayer-times |
frontend | healthy | apps/web/app/[locale]/prayer-times/page.tsx |
/[locale]/quran |
frontend | healthy | apps/web/app/[locale]/quran/page.tsx |
/[locale]/quran/bookmarks |
frontend | healthy | apps/web/app/[locale]/quran/bookmarks/page.tsx |
/[locale]/quran/[surah] |
frontend | healthy | apps/web/app/[locale]/quran/[surah]/page.tsx |
/[locale]/search |
frontend | healthy | apps/web/app/[locale]/search/page.tsx |
/[locale]/adhkar |
frontend | healthy | apps/web/app/[locale]/adhkar/page.tsx |
/[locale]/adhkar/[slug] |
frontend | healthy | apps/web/app/[locale]/adhkar/[slug]/page.tsx |
/[locale]/playlists/[slug] |
frontend | healthy | apps/web/app/[locale]/playlists/[slug]/page.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
RootLayout |
frontend | healthy | apps/admin/app/layout.tsx |
NewAzkarPage |
frontend | healthy | apps/admin/app/adhkar/new/page.tsx |
NewCategoryPage |
frontend | healthy | apps/admin/app/categories/new/page.tsx |
PlaylistsIndexPage |
frontend | healthy | apps/admin/app/playlists/page.tsx |
RootLayout |
frontend | healthy | apps/web/app/layout.tsx |
HomeLoading |
frontend | healthy | apps/web/app/[locale]/loading.tsx |
SearchLoading |
frontend | healthy | apps/web/app/[locale]/search/loading.tsx |
AdhkarLoading |
frontend | healthy | apps/web/app/[locale]/adhkar/loading.tsx |
AdhkarReadingLoading |
frontend | healthy | apps/web/app/[locale]/adhkar/[slug]/loading.tsx |
PlaylistLoading |
frontend | healthy | apps/web/app/[locale]/playlists/[slug]/loading.tsx |
RootLayout |
frontend | healthy | apps/mobile/app/_layout.tsx |
HomeScreen |
frontend | healthy | apps/mobile/app/index.tsx |
DownloadsScreen |
frontend | healthy | apps/mobile/app/downloads.tsx |
PlaylistDetailScreen |
frontend | healthy | apps/mobile/app/playlist/[slug].tsx |
PrayerTimesScreen |
frontend | healthy | apps/mobile/app/prayer-times/index.tsx |
QuranReaderScreen |
frontend | healthy | apps/mobile/app/quran/[surah].tsx |
QuranIndexScreen |
frontend | healthy | apps/mobile/app/quran/index.tsx |
QuranBookmarksScreen |
frontend | healthy | apps/mobile/app/quran/bookmarks.tsx |
AdhkarListScreen |
frontend | healthy | apps/mobile/app/adhkar/index.tsx |
AdhkarReaderScreen |
frontend | healthy | apps/mobile/app/adhkar/[slug].tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::packages/api/package.json |
security | healthy | packages/api/package.json |
auth::packages/api/eslint.config.mjs |
security | healthy | packages/api/eslint.config.mjs |
auth::packages/api/src/auth/index.ts |
security | healthy | packages/api/src/auth/index.ts |
auth::README.md |
security | healthy | README.md |
auth::packages/api/src/auth/require-session.ts |
security | healthy | packages/api/src/auth/require-session.ts |
auth::packages/api/src/auth/config.edge.ts |
security | healthy | packages/api/src/auth/config.edge.ts |
auth::apps/admin/README.md |
security | healthy | apps/admin/README.md |
auth::apps/admin/proxy.ts |
security | healthy | apps/admin/proxy.ts |
auth::packages/api/src/auth/config.ts |
security | healthy | packages/api/src/auth/config.ts |
auth::apps/admin/features/auth/actions/sign-in.action.ts |
security | healthy | apps/admin/features/auth/actions/sign-in.action.ts |
auth::packages/api/src/services/playlist.service.ts |
security | healthy | packages/api/src/services/playlist.service.ts |
auth::apps/admin/package.json |
security | healthy | apps/admin/package.json |
auth::packages/api/src/services/azkar.service.ts |
security | healthy | packages/api/src/services/azkar.service.ts |
auth::packages/api/src/types/next-auth.d.ts |
security | healthy | packages/api/src/types/next-auth.d.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
0004-i18n-indexes.ts |
data | healthy | packages/api/src/db/migrations/0004-i18n-indexes.ts |
0001-indexes.ts |
data | healthy | packages/api/src/db/migrations/0001-indexes.ts |
0008-azkar-indexes.ts |
data | healthy | packages/api/src/db/migrations/0008-azkar-indexes.ts |
0007-playlist-order.ts |
data | healthy | packages/api/src/db/migrations/0007-playlist-order.ts |
0005-embedded-locale.ts |
data | healthy | packages/api/src/db/migrations/0005-embedded-locale.ts |
0002-category-indexes.ts |
data | healthy | packages/api/src/db/migrations/0002-category-indexes.ts |
0003-i18n-backfill.ts |
data | healthy | packages/api/src/db/migrations/0003-i18n-backfill.ts |
0009-quran-indexes.ts |
data | healthy | packages/api/src/db/migrations/0009-quran-indexes.ts |
0006-search-indexes.ts |
data | healthy | packages/api/src/db/migrations/0006-search-indexes.ts |
0003-i18n-backfill.test.ts |
data | healthy | packages/api/src/db/migrations/0003-i18n-backfill.test.ts |
0010-quran-tafsir-indexes.ts |
data | healthy | packages/api/src/db/migrations/0010-quran-tafsir-indexes.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
AppError |
software | healthy | packages/api/src/errors/index.ts:AppError |
MockXHR |
software | healthy | apps/admin/features/playlists/hooks/use-track-upload.test.t… |
ResizeObserver |
software | healthy | apps/web/vitest.setup.ts:ResizeObserver |
MockAudio |
software | healthy | apps/web/vitest.setup.ts:MockAudio |
PointerEventPolyfill |
software | healthy | apps/web/features/player/components/audio-player.test.tsx:P… |
to |
software | healthy | apps/web/features/categories/components/category-filter-bar… |
MockDirectory |
software | healthy | apps/mobile/jest.setup.js:MockDirectory |
MockFile |
software | healthy | apps/mobile/jest.setup.js:MockFile |
ApiError |
software | healthy | apps/mobile/lib/api.ts:ApiError |
| Label | Layer | Status | Path |
|---|---|---|---|
password_literal::packages/api/src/services/auth.service.te… |
security | healthy | packages/api/src/services/auth.service.test.ts |
password_literal::packages/api/src/services/auth.service.te… |
security | healthy | packages/api/src/services/auth.service.test.ts |
password_literal::packages/api/src/services/auth.service.te… |
security | healthy | packages/api/src/services/auth.service.test.ts |
password_literal::apps/admin/features/auth/components/login… |
security | healthy | apps/admin/features/auth/components/login-form.test.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
AhmedMuhammedElsaid__Nour-Platform |
software | healthy | /data/fable5_failed_archive/AhmedMuhammedElsaid__Nour-Platf… |
| Label | Layer | Status | Path |
|---|---|---|---|
mongodb |
data | healthy | .env.example |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | packages/api/package.json |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::ci |
cicd | healthy | .github/workflows/ci.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
ci |
cicd | healthy | .github/workflows/ci.yml |
This page is publicly accessible at:
https://repobility.com/scan/731adc02-970e-48ad-8ec0-0c6ff8802cfa/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/731adc02-970e-48ad-8ec0-0c6ff8802cfa/
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.