https://github.com/sarahdesertpaddleboards/desert-paddleboards-frontend
· scanned 2026-06-16 00:02 UTC (2 months, 3 weeks ago)
30 raw signals (0 security + 30 graph)
Last scanned 2 months, 3 weeks ago · v1 · 29 actionable findings from 1 signal source. 1 repeated signal grouped for readability. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 650 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 |
|---|---|---|---|
proxies |
software | healthy | functions/experiences/upcoming.js:proxies |
fetchLocationItemIds |
software | healthy | functions/experiences/upcoming.js:fetchLocationItemIds |
ids |
software | healthy | functions/experiences/upcoming.js:ids |
monthsToFetch |
software | healthy | functions/experiences/upcoming.js:monthsToFetch |
fetchItemMonth |
software | healthy | functions/experiences/upcoming.js:fetchItemMonth |
buildFeed |
software | healthy | functions/experiences/upcoming.js:buildFeed |
onRequestGet |
software | healthy | functions/experiences/upcoming.js:onRequestGet |
jsonResponse |
software | healthy | functions/experiences/upcoming.js:jsonResponse |
EventCalendar |
software | healthy | archive/components/EventCalendar.tsx:EventCalendar |
goToPreviousMonth |
software | healthy | archive/components/EventCalendar.tsx:goToPreviousMonth |
goToNextMonth |
software | healthy | archive/components/EventCalendar.tsx:goToNextMonth |
goToToday |
software | healthy | archive/components/EventCalendar.tsx:goToToday |
isToday |
software | healthy | archive/components/EventCalendar.tsx:isToday |
ClassesPage |
software | healthy | archive/pages/classes/ClassesPage.tsx:ClassesPage |
load |
software | healthy | archive/pages/classes/ClassesPage.tsx:load |
SessionDetailPage |
software | healthy | archive/pages/classes/SessionDetailPage.tsx:SessionDetailPa… |
load |
software | healthy | archive/pages/classes/SessionDetailPage.tsx:load |
ClassDetailPage |
software | healthy | archive/pages/classes/ClassesDetailPage.tsx:ClassDetailPage |
load |
software | healthy | archive/pages/classes/ClassesDetailPage.tsx:load |
ClassProductsAdmin |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:ClassProductsAdm… |
loadProducts |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:loadProducts |
updateForm |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:updateForm |
startEdit |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:startEdit |
resetForm |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:resetForm |
saveProduct |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:saveProduct |
deleteProduct |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:deleteProduct |
ClassSessionsAdmin |
software | healthy | archive/pages/admin/ClassSessionsAdmin.tsx:ClassSessionsAdm… |
loadSessions |
software | healthy | archive/pages/admin/ClassSessionsAdmin.tsx:loadSessions |
loadProducts |
software | healthy | archive/pages/admin/ClassSessionsAdmin.tsx:loadProducts |
deleteSession |
software | healthy | archive/pages/admin/ClassSessionsAdmin.tsx:deleteSession |
BadRequestError |
software | healthy | shared/_core/error.ts:BadRequestError |
UnauthorizedError |
software | healthy | shared/_core/error.ts:UnauthorizedError |
ForbiddenError |
software | healthy | shared/_core/error.ts:ForbiddenError |
NotFoundError |
software | healthy | shared/_core/error.ts:NotFoundError |
pickImage |
software | healthy | scripts/generate-seo-data.mjs:pickImage |
normaliseItem |
software | healthy | scripts/generate-seo-data.mjs:normaliseItem |
isLocationItem |
software | healthy | scripts/generate-seo-data.mjs:isLocationItem |
fetchCatalog |
software | healthy | scripts/generate-seo-data.mjs:fetchCatalog |
monthsToFetch |
software | healthy | scripts/generate-seo-data.mjs:monthsToFetch |
fetchItemMonth |
software | healthy | scripts/generate-seo-data.mjs:fetchItemMonth |
fetchUpcoming |
software | healthy | scripts/generate-seo-data.mjs:fetchUpcoming |
all |
software | healthy | scripts/generate-seo-data.mjs:all |
main |
software | healthy | scripts/generate-seo-data.mjs:main |
walk |
software | healthy | scripts/generate-sitemap.mjs:walk |
toRoute |
software | healthy | scripts/generate-sitemap.mjs:toRoute |
getLoginUrl |
software | healthy | src/const.ts:getLoginUrl |
Layout |
software | healthy | src/Layout.tsx:Layout |
fmtDate |
software | healthy | src/components/LocationFinder.tsx:fmtDate |
fmtTime |
software | healthy | src/components/LocationFinder.tsx:fmtTime |
LocationFinder |
software | healthy | src/components/LocationFinder.tsx:LocationFinder |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
vite.config.ts |
software | healthy | vite.config.ts |
vercel.json |
software | healthy | vercel.json |
pnpm-lock.yaml |
software | healthy | pnpm-lock.yaml |
tailwind.config.js |
software | healthy | tailwind.config.js |
package.json |
software | healthy | package.json |
wrangler.toml |
software | healthy | wrangler.toml |
index.html |
software | healthy | index.html |
.env.example |
software | healthy | .env.example |
tsconfig.json |
software | healthy | tsconfig.json |
postcss.config.js |
software | healthy | postcss.config.js |
upcoming.js |
software | healthy | functions/experiences/upcoming.js |
EventCalendar.tsx |
software | healthy | archive/components/EventCalendar.tsx |
ClassesPage.tsx |
software | healthy | archive/pages/classes/ClassesPage.tsx |
SessionDetailPage.tsx |
software | healthy | archive/pages/classes/SessionDetailPage.tsx |
ClassesDetailPage.tsx |
software | healthy | archive/pages/classes/ClassesDetailPage.tsx |
ClassProductsAdmin.tsx |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx |
ClassSessionsAdmin.tsx |
software | healthy | archive/pages/admin/ClassSessionsAdmin.tsx |
const.ts |
software | healthy | shared/const.ts |
types.ts |
software | healthy | shared/types.ts |
error.ts |
software | healthy | shared/_core/error.ts |
generate-seo-data.mjs |
software | healthy | scripts/generate-seo-data.mjs |
generate-sitemap.mjs |
software | healthy | scripts/generate-sitemap.mjs |
deploy-cloudflare.yml |
software | healthy | .github/workflows/deploy-cloudflare.yml |
index.css |
software | healthy | src/index.css |
const.ts |
software | healthy | src/const.ts |
Layout.tsx |
software | healthy | src/Layout.tsx |
main.tsx |
software | healthy | src/main.tsx |
App.tsx |
software | healthy | src/App.tsx |
LocationFinder.tsx |
software | healthy | src/components/LocationFinder.tsx |
JsonLd.tsx |
software | healthy | src/components/JsonLd.tsx |
FareHarborButton.tsx |
software | healthy | src/components/FareHarborButton.tsx |
InstagramFeed.tsx |
software | healthy | src/components/InstagramFeed.tsx |
ErrorBoundary.tsx |
software | healthy | src/components/ErrorBoundary.tsx |
Map.tsx |
software | healthy | src/components/Map.tsx |
Footer.tsx |
software | healthy | src/components/Footer.tsx |
Header.tsx |
software | healthy | src/components/Header.tsx |
input-group.tsx |
software | healthy | src/components/ui/input-group.tsx |
spinner.tsx |
software | healthy | src/components/ui/spinner.tsx |
table.tsx |
software | healthy | src/components/ui/table.tsx |
sheet.tsx |
software | healthy | src/components/ui/sheet.tsx |
calendar.tsx |
software | healthy | src/components/ui/calendar.tsx |
collapsible.tsx |
software | healthy | src/components/ui/collapsible.tsx |
sidebar.tsx |
software | healthy | src/components/ui/sidebar.tsx |
checkbox.tsx |
software | healthy | src/components/ui/checkbox.tsx |
kbd.tsx |
software | healthy | src/components/ui/kbd.tsx |
avatar.tsx |
software | healthy | src/components/ui/avatar.tsx |
badge.tsx |
software | healthy | src/components/ui/badge.tsx |
alert-dialog.tsx |
software | healthy | src/components/ui/alert-dialog.tsx |
dialog.tsx |
software | healthy | src/components/ui/dialog.tsx |
radio-group.tsx |
software | healthy | src/components/ui/radio-group.tsx |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
EventCalendar |
frontend | healthy | archive/components/EventCalendar.tsx |
ClassesPage |
frontend | healthy | archive/pages/classes/ClassesPage.tsx |
SessionDetailPage |
frontend | healthy | archive/pages/classes/SessionDetailPage.tsx |
ClassDetailPage |
frontend | healthy | archive/pages/classes/ClassesDetailPage.tsx |
ClassProductsAdmin |
frontend | healthy | archive/pages/admin/ClassProductsAdmin.tsx |
ClassSessionsAdmin |
frontend | healthy | archive/pages/admin/ClassSessionsAdmin.tsx |
Layout |
frontend | healthy | src/Layout.tsx |
LocationFinder |
frontend | healthy | src/components/LocationFinder.tsx |
JsonLd |
frontend | healthy | src/components/JsonLd.tsx |
FareHarborButton |
frontend | healthy | src/components/FareHarborButton.tsx |
InstagramFeed |
frontend | healthy | src/components/InstagramFeed.tsx |
ErrorBoundary |
frontend | healthy | src/components/ErrorBoundary.tsx |
Footer |
frontend | healthy | src/components/Footer.tsx |
Header |
frontend | healthy | src/components/Header.tsx |
GiftCertificatesManager |
frontend | healthy | src/components/admin/GiftCertificatesManager.tsx |
OrdersManager |
frontend | healthy | src/components/admin/OrdersManager.tsx |
Admin |
frontend | healthy | src/pages/Admin.tsx |
AdminLogin |
frontend | healthy | src/pages/AdminLogin.tsx |
Membership |
frontend | healthy | src/pages/Membership.tsx |
About |
frontend | healthy | src/pages/About.tsx |
CommunityEvents |
frontend | healthy | src/pages/CommunityEvents.tsx |
CheckoutSuccess |
frontend | healthy | src/pages/CheckoutSuccess.tsx |
FAQ |
frontend | healthy | src/pages/FAQ.tsx |
Success |
frontend | healthy | src/pages/Success.tsx |
PrivateEvents |
frontend | healthy | src/pages/PrivateEvents.tsx |
Shop |
frontend | healthy | src/pages/Shop.tsx |
SantaPaddle |
frontend | healthy | src/pages/SantaPaddle.tsx |
NotFound |
frontend | healthy | src/pages/NotFound.tsx |
Home |
frontend | healthy | src/pages/Home.tsx |
LocationsIndex |
frontend | healthy | src/pages/locations/index.tsx |
LocationDetail |
frontend | healthy | src/pages/locations/[slug].tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
functions |
software | healthy | functions |
experiences |
software | healthy | functions/experiences |
archive |
software | healthy | archive |
components |
software | healthy | archive/components |
pages |
software | healthy | archive/pages |
classes |
software | healthy | archive/pages/classes |
admin |
software | healthy | archive/pages/admin |
shared |
software | healthy | shared |
_core |
software | healthy | shared/_core |
scripts |
software | healthy | scripts |
.github |
software | healthy | .github |
workflows |
software | healthy | .github/workflows |
src |
software | healthy | src |
components |
software | healthy | src/components |
ui |
software | healthy | src/components/ui |
admin |
software | healthy | src/components/admin |
contexts |
software | healthy | src/contexts |
lib |
software | healthy | src/lib |
pages |
software | healthy | src/pages |
locations |
software | healthy | src/pages/locations |
hooks |
software | healthy | src/hooks |
| Label | Layer | Status | Path |
|---|---|---|---|
/classes/ClassesPage |
frontend | healthy | archive/pages/classes/ClassesPage.tsx |
/classes/SessionDetailPage |
frontend | healthy | archive/pages/classes/SessionDetailPage.tsx |
/classes/ClassesDetailPage |
frontend | healthy | archive/pages/classes/ClassesDetailPage.tsx |
/admin/ClassProductsAdmin |
frontend | healthy | archive/pages/admin/ClassProductsAdmin.tsx |
/admin/ClassSessionsAdmin |
frontend | healthy | archive/pages/admin/ClassSessionsAdmin.tsx |
/Admin |
frontend | healthy | src/pages/Admin.tsx |
/AdminLogin |
frontend | healthy | src/pages/AdminLogin.tsx |
/Membership |
frontend | healthy | src/pages/Membership.tsx |
/About |
frontend | healthy | src/pages/About.tsx |
/CommunityEvents |
frontend | healthy | src/pages/CommunityEvents.tsx |
/CheckoutSuccess |
frontend | healthy | src/pages/CheckoutSuccess.tsx |
/FAQ |
frontend | healthy | src/pages/FAQ.tsx |
/Success |
frontend | healthy | src/pages/Success.tsx |
/PrivateEvents |
frontend | healthy | src/pages/PrivateEvents.tsx |
/Shop |
frontend | healthy | src/pages/Shop.tsx |
/SantaPaddle |
frontend | healthy | src/pages/SantaPaddle.tsx |
/NotFound |
frontend | healthy | src/pages/NotFound.tsx |
/Home |
frontend | healthy | src/pages/Home.tsx |
/locations/ |
frontend | healthy | src/pages/locations/index.tsx |
/locations/[slug] |
frontend | healthy | src/pages/locations/[slug].tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
products |
software | healthy | archive/pages/classes/ClassesPage.tsx:products |
product |
software | healthy | archive/pages/classes/ClassesDetailPage.tsx:product |
import |
software | healthy | archive/pages/classes/ClassesDetailPage.tsx:import |
products |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:products |
product |
software | healthy | archive/pages/admin/ClassProductsAdmin.tsx:product |
sessions |
software | healthy | archive/pages/admin/ClassSessionsAdmin.tsx:sessions |
with |
software | healthy | shared/_core/error.ts:with |
HttpError |
software | healthy | shared/_core/error.ts:HttpError |
updates |
software | healthy | src/components/InstagramFeed.tsx:updates |
ErrorBoundary |
software | healthy | src/components/ErrorBoundary.tsx:ErrorBoundary |
bookings |
software | healthy | src/lib/submitCheckout.ts:bookings |
at |
software | healthy | src/pages/About.tsx:at |
that |
software | healthy | src/pages/FAQ.tsx:that |
begins |
software | healthy | src/pages/FAQ.tsx:begins |
| Label | Layer | Status | Path |
|---|---|---|---|
GET /class-products |
api | healthy | archive/pages/classes/ClassesPage.tsx |
POST /class-products |
api | healthy | archive/pages/admin/ClassProductsAdmin.tsx |
GET /class-sessions |
api | healthy | archive/pages/admin/ClassSessionsAdmin.tsx |
GET /admin/classes/products |
api | healthy | src/lib/adminApi.ts |
POST /admin/classes/products |
api | healthy | src/lib/adminApi.ts |
GET /admin/classes/sessions |
api | healthy | src/lib/adminApi.ts |
GET /admin/venues |
api | healthy | src/lib/adminApi.ts |
POST /admin/classes/sessions |
api | healthy | src/lib/adminApi.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
CLOUDFLARE_API_TOKEN |
cicd | healthy | — |
VITE_GOOGLE_MAPS_API_KEY |
cicd | healthy | — |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-gy3rwdsl |
software | healthy | /tmp/repobility-clone-gy3rwdsl |
| Label | Layer | Status | Path |
|---|---|---|---|
port:5173 |
network | healthy | vite.config.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::src/const.ts |
security | healthy | src/const.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
gha::deploy-cloudflare |
cicd | healthy | .github/workflows/deploy-cloudflare.yml |
| Label | Layer | Status | Path |
|---|---|---|---|
deploy |
cicd | healthy | .github/workflows/deploy-cloudflare.yml |
This page is publicly accessible at:
https://repobility.com/scan/b118e794-859a-4382-8c10-76b9081439ca/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/b118e794-859a-4382-8c10-76b9081439ca/
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.