https://github.com/skyras13/amber-photography
· scanned 2026-06-16 00:15 UTC (2 months, 2 weeks ago)
18 raw signals (0 security + 18 graph)
Last scanned 2 months, 2 weeks ago · v1 · 18 actionable findings from 1 signal source. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 181 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 |
|---|---|---|---|
url |
software | healthy | scripts/migrate-to-r2.mjs:url |
put |
software | healthy | scripts/migrate-to-r2.mjs:put |
id |
software | healthy | scripts/import-smugmug.mjs:id |
slugify |
software | healthy | scripts/import-smugmug.mjs:slugify |
get |
software | healthy | scripts/import-smugmug.mjs:get |
decodeEntities |
software | healthy | scripts/import-smugmug.mjs:decodeEntities |
listGalleries |
software | healthy | scripts/import-smugmug.mjs:listGalleries |
galleryPhotos |
software | healthy | scripts/import-smugmug.mjs:galleryPhotos |
jpegDimensions |
software | healthy | scripts/import-smugmug.mjs:jpegDimensions |
id |
software | healthy | scripts/seed.mjs:id |
download |
software | healthy | scripts/seed.mjs:download |
GalleryGrid |
software | healthy | src/components/GalleryGrid.tsx:GalleryGrid |
onKey |
software | healthy | src/components/GalleryGrid.tsx:onKey |
SiteFooter |
software | healthy | src/components/SiteFooter.tsx:SiteFooter |
SiteNav |
software | healthy | src/components/SiteNav.tsx:SiteNav |
ImportFromGoogle |
software | healthy | src/components/admin/ImportFromGoogle.tsx:ImportFromGoogle |
startImport |
software | healthy | src/components/admin/ImportFromGoogle.tsx:startImport |
Home |
software | healthy | src/app/page.tsx:Home |
publicAlbums |
software | healthy | src/app/page.tsx:publicAlbums |
RootLayout |
software | healthy | src/app/layout.tsx:RootLayout |
AboutPage |
software | healthy | src/app/about/page.tsx:AboutPage |
albums |
software | healthy | src/app/about/page.tsx:albums |
GalleriesPage |
software | healthy | src/app/galleries/page.tsx:GalleriesPage |
albums |
software | healthy | src/app/galleries/page.tsx:albums |
AlbumPage |
software | healthy | src/app/galleries/[slug]/page.tsx:AlbumPage |
ClientGalleryPage |
software | healthy | src/app/client/[slug]/page.tsx:ClientGalleryPage |
unlock |
software | healthy | src/app/client/[slug]/page.tsx:unlock |
ContactPage |
software | healthy | src/app/contact/page.tsx:ContactPage |
POST |
software | healthy | src/app/api/google/picker/route.ts:POST |
GET |
software | healthy | src/app/api/google/picker/[sessionId]/route.ts:GET |
GET |
software | healthy | src/app/api/google/auth/route.ts:GET |
GET |
software | healthy | src/app/api/google/callback/route.ts:GET |
POST |
software | healthy | src/app/api/google/import/route.ts:POST |
GET |
software | healthy | src/app/api/photos/[id]/route.ts:GET |
GET |
software | healthy | src/app/api/download/[slug]/route.ts:GET |
allowed |
software | healthy | src/app/api/download/[slug]/route.ts:allowed |
requireAdmin |
software | healthy | src/app/admin/actions.ts:requireAdmin |
loginAction |
software | healthy | src/app/admin/actions.ts:loginAction |
logoutAction |
software | healthy | src/app/admin/actions.ts:logoutAction |
createAlbumAction |
software | healthy | src/app/admin/actions.ts:createAlbumAction |
updateAlbumAction |
software | healthy | src/app/admin/actions.ts:updateAlbumAction |
deleteAlbumAction |
software | healthy | src/app/admin/actions.ts:deleteAlbumAction |
uploadPhotosAction |
software | healthy | src/app/admin/actions.ts:uploadPhotosAction |
deletePhotoAction |
software | healthy | src/app/admin/actions.ts:deletePhotoAction |
setCoverAction |
software | healthy | src/app/admin/actions.ts:setCoverAction |
AdminPage |
software | healthy | src/app/admin/page.tsx:AdminPage |
AdminAlbumPage |
software | healthy | src/app/admin/albums/[id]/page.tsx:AdminAlbumPage |
sign |
software | healthy | src/lib/auth.ts:sign |
adminPassword |
software | healthy | src/lib/auth.ts:adminPassword |
isAdmin |
software | healthy | src/lib/auth.ts:isAdmin |
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 |
README.md |
software | healthy | README.md |
CLAUDE.md |
software | healthy | CLAUDE.md |
package.json |
software | healthy | package.json |
package-lock.json |
software | healthy | package-lock.json |
.env.example |
software | healthy | .env.example |
tsconfig.json |
software | healthy | tsconfig.json |
eslint.config.mjs |
software | healthy | eslint.config.mjs |
AGENTS.md |
software | healthy | AGENTS.md |
next.config.ts |
software | healthy | next.config.ts |
migrate-to-r2.mjs |
software | healthy | scripts/migrate-to-r2.mjs |
import-smugmug.mjs |
software | healthy | scripts/import-smugmug.mjs |
seed.mjs |
software | healthy | scripts/seed.mjs |
GalleryGrid.tsx |
software | healthy | src/components/GalleryGrid.tsx |
SiteFooter.tsx |
software | healthy | src/components/SiteFooter.tsx |
SiteNav.tsx |
software | healthy | src/components/SiteNav.tsx |
ImportFromGoogle.tsx |
software | healthy | src/components/admin/ImportFromGoogle.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 |
page.tsx |
software | healthy | src/app/about/page.tsx |
page.tsx |
software | healthy | src/app/galleries/page.tsx |
page.tsx |
software | healthy | src/app/galleries/[slug]/page.tsx |
page.tsx |
software | healthy | src/app/client/[slug]/page.tsx |
page.tsx |
software | healthy | src/app/contact/page.tsx |
route.ts |
software | healthy | src/app/api/google/picker/route.ts |
route.ts |
software | healthy | src/app/api/google/picker/[sessionId]/route.ts |
route.ts |
software | healthy | src/app/api/google/auth/route.ts |
route.ts |
software | healthy | src/app/api/google/callback/route.ts |
route.ts |
software | healthy | src/app/api/google/import/route.ts |
route.ts |
software | healthy | src/app/api/photos/[id]/route.ts |
route.ts |
software | healthy | src/app/api/download/[slug]/route.ts |
actions.ts |
software | healthy | src/app/admin/actions.ts |
page.tsx |
software | healthy | src/app/admin/page.tsx |
page.tsx |
software | healthy | src/app/admin/albums/[id]/page.tsx |
auth.ts |
software | healthy | src/lib/auth.ts |
storage.ts |
software | healthy | src/lib/storage.ts |
store.ts |
software | healthy | src/lib/store.ts |
r2.ts |
software | healthy | src/lib/r2.ts |
types.ts |
software | healthy | src/lib/types.ts |
google.ts |
software | healthy | src/lib/google.ts |
CLAUDE.md |
quality | healthy | CLAUDE.md |
AGENTS.md |
quality | healthy | AGENTS.md |
| Label | Layer | Status | Path |
|---|---|---|---|
scripts |
software | healthy | scripts |
src |
software | healthy | src |
components |
software | healthy | src/components |
admin |
software | healthy | src/components/admin |
app |
software | healthy | src/app |
about |
software | healthy | src/app/about |
galleries |
software | healthy | src/app/galleries |
[slug] |
software | healthy | src/app/galleries/[slug] |
client |
software | healthy | src/app/client |
[slug] |
software | healthy | src/app/client/[slug] |
contact |
software | healthy | src/app/contact |
api |
software | healthy | src/app/api |
google |
software | healthy | src/app/api/google |
picker |
software | healthy | src/app/api/google/picker |
[sessionId] |
software | healthy | src/app/api/google/picker/[sessionId] |
auth |
software | healthy | src/app/api/google/auth |
callback |
software | healthy | src/app/api/google/callback |
import |
software | healthy | src/app/api/google/import |
photos |
software | healthy | src/app/api/photos |
[id] |
software | healthy | src/app/api/photos/[id] |
download |
software | healthy | src/app/api/download |
[slug] |
software | healthy | src/app/api/download/[slug] |
admin |
software | healthy | src/app/admin |
albums |
software | healthy | src/app/admin/albums |
[id] |
software | healthy | src/app/admin/albums/[id] |
lib |
software | healthy | src/lib |
| Label | Layer | Status | Path |
|---|---|---|---|
/page.tsx |
frontend | healthy | src/app/page.tsx |
/about |
frontend | healthy | src/app/about/page.tsx |
/galleries |
frontend | healthy | src/app/galleries/page.tsx |
/galleries/[slug] |
frontend | healthy | src/app/galleries/[slug]/page.tsx |
/client/[slug] |
frontend | healthy | src/app/client/[slug]/page.tsx |
/contact |
frontend | healthy | src/app/contact/page.tsx |
/admin |
frontend | healthy | src/app/admin/page.tsx |
/admin/albums/[id] |
frontend | healthy | src/app/admin/albums/[id]/page.tsx |
/ |
frontend | healthy | src/lib/auth.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
GalleryGrid |
frontend | healthy | src/components/GalleryGrid.tsx |
SiteFooter |
frontend | healthy | src/components/SiteFooter.tsx |
SiteNav |
frontend | healthy | src/components/SiteNav.tsx |
ImportFromGoogle |
frontend | healthy | src/components/admin/ImportFromGoogle.tsx |
RootLayout |
frontend | healthy | src/app/layout.tsx |
ContactPage |
frontend | healthy | src/app/contact/page.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::README.md |
security | healthy | README.md |
auth::src/lib/google.ts |
security | healthy | src/lib/google.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-6fnz4i30 |
software | healthy | /tmp/repobility-clone-6fnz4i30 |
| Label | Layer | Status | Path |
|---|---|---|---|
postgres |
data | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | src/lib/r2.ts |
This page is publicly accessible at:
https://repobility.com/scan/8b641819-d0c0-4b6a-81a8-7b369d2abc44/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/8b641819-d0c0-4b6a-81a8-7b369d2abc44/
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.