How bobsite1122-boop/imd-app-pk works
This is a Next.js marketing and content-management site for iMD App subscriptions. Visitors browse subscription plans, FAQs, installation guidance, and learning resources; administrators edit the content that powers those pages. The graph separates public content, admin workflows, CMS persistence, and SEO/contact support. Source-index references establish many page-to-module links, while sampled CMS code confirms validation and Supabase access. Admin editor-to-update-endpoint wiring is not shown, so those links are omitted.
Main entry points: json-ld.ts Structured Data · reader.ts CMS Reader · write.ts CMS Writer · metadata.ts Page Metadata
Components 24
Public Site
- Home Page
app/(site)/page.tsx - Plan Details
app/(site)/plans/[slug]/page.tsx - FAQ Page
app/(site)/faqs/page.tsx - Install Guide
app/(site)/install/page.tsx - Resource Catalog
app/(site)/databases/page.tsx
Admin CMS
- Admin Login
app/admin/login/page.tsx - Credential Auth
auth.ts - CMS Editor Pages
app/admin/(protected) - Content Editors
components/admin - Content Update APIs
app/api/update-install/route.ts - Seed API
app/api/admin/seed/route.ts - AI Edit API
app/api/admin/ai-edit/route.ts
Content Data
- Content Schemas
lib/cms/schemas.ts - CMS Reader
lib/cms/reader.ts - CMS Writer
lib/cms/write.ts - Supabase CMS Store
lib/supabase/server.ts
SEO & Contact
- Plan Enrichment
lib/plans.ts - Contact Settings
lib/contact.ts - FAQ Answers
lib/faq-answers.tsx - Page Metadata
lib/seo/metadata.ts - Structured Data
lib/seo/json-ld.ts - Plan SEO
lib/seo/plans.ts
Other components
- Site Visitor
- Administrator
Connections 39
- Site Visitor → Home Page: browses
app/(site)/page.tsx - Site Visitor → Plan Details: views plans
app/(site)/plans/[slug]/page.tsx - Site Visitor → FAQ Page: reads answers
app/(site)/faqs/page.tsx - Site Visitor → Install Guide: gets instructions
app/(site)/install/page.tsx - Site Visitor → Resource Catalog: browses resources
app/(site)/databases/page.tsx - Home Page → Plan Enrichment: loads plans
app/(site)/page.tsx - Plan Enrichment → CMS Reader: reads pricing
lib/plans.ts - Plan Enrichment → Contact Settings: builds contact links
lib/plans.ts - FAQ Page → FAQ Answers: loads FAQ answers
app/(site)/faqs/page.tsx - FAQ Answers → Contact Settings: uses contact links
lib/faq-answers.tsx - Resource Catalog → Page Metadata: builds metadata
app/(site)/databases/page.tsx - Resource Catalog → Structured Data: builds JSON-LD
app/(site)/databases/page.tsx - FAQ Page → Page Metadata: builds metadata
app/(site)/faqs/page.tsx - FAQ Page → Structured Data: builds JSON-LD
app/(site)/faqs/page.tsx - Install Guide → Page Metadata: builds metadata
app/(site)/install/page.tsx - Install Guide → Structured Data: builds JSON-LD
app/(site)/install/page.tsx - Home Page → Page Metadata: builds metadata
app/(site)/page.tsx - Home Page → Structured Data: builds JSON-LD
app/(site)/page.tsx - Plan Details → Plan Enrichment: loads plan data
app/(site)/plans/[slug]/page.tsx - Plan Details → Page Metadata: builds metadata
app/(site)/plans/[slug]/page.tsx - Plan Details → Structured Data: builds JSON-LD
app/(site)/plans/[slug]/page.tsx - Structured Data → Plan SEO: parses plan prices
lib/seo/json-ld.ts - Administrator → Admin Login: signs in
app/admin/login/page.tsx - Admin Login → Credential Auth: authenticates
- CMS Editor Pages → Content Editors: renders editors
app/admin/(protected)/resources/page.tsx - CMS Editor Pages → CMS Reader: loads CMS content
app/admin/(protected)/resources/page.tsx - Content Update APIs → Credential Auth: checks session
app/api/update-install/route.ts - Content Update APIs → Content Schemas: validates content
app/api/update-install/route.ts - Content Update APIs → CMS Writer: writes content
app/api/update-install/route.ts - Seed API → Credential Auth: checks session
app/api/admin/seed/route.ts - Seed API → CMS Writer: seeds content
app/api/admin/seed/route.ts - AI Edit API → Credential Auth: checks session
app/api/admin/ai-edit/route.ts - AI Edit API → Content Schemas: validates content
app/api/admin/ai-edit/route.ts - AI Edit API → CMS Reader: reads content
app/api/admin/ai-edit/route.ts - AI Edit API → CMS Writer: writes content
app/api/admin/ai-edit/route.ts - CMS Reader → Content Schemas: validates content
lib/cms/reader.ts - CMS Reader → Supabase CMS Store: reads records
lib/cms/reader.ts - CMS Writer → Content Schemas: validates content
lib/cms/write.ts - CMS Writer → Supabase CMS Store: upserts records
lib/cms/write.ts