How shawneetz/gfci works
Golden Faith is a church website with public pages, content-driven listings, and a password-protected admin panel. Visitors browse sermons, events, ministries and live-stream information, or submit Connect, prayer and giving-intent forms; staff sign in to manage published content and review submissions. The README documents the wider editable content set and Vercel Blob image uploads. Sampled source confirms event/ministry/sermon queries and form persistence; unsampled admin CRUD and other query behavior is represented only at subsystem level, with README evidence.
Main entry points: (site) Public pages · prisma.ts PostgreSQL database · (dashboard) Content management · page.tsx Events browsing
Components 21
Public experience
- Public pages
src/app/(site) - Events browsing
src/app/(site)/events/page.tsx - Sermon pages
src/app/(site)/sermons/page.tsx - Ministry pages
src/app/(site)/ministries/[slug]/page.tsx - Live stream
src/app/(site)/live/page.tsx - Public forms
src/sections
Content services
- Form actions
src/lib/forms.ts - Event queries
src/server/queries/events.ts - Sermon queries
src/server/queries/sermons.ts - Ministry queries
src/server/queries/ministries.ts - Other content queries
src/server/queries - Content mutations
src/server/mutations
Administration
- Admin sign-in
src/app/admin/login/page.tsx - Admin dashboard
src/app/admin/(dashboard)/page.tsx - Content management
src/app/admin/(dashboard)
Shared platform
- Authentication
src/auth.ts - PostgreSQL database
src/lib/prisma.ts - Vercel Blob
- Site configuration
src/config/site.ts
Other components
- Visitor
- Church staff
Connections 23
- Visitor → Public pages: browses
- Public pages → Events browsing: includes
- Public pages → Sermon pages: includes
- Public pages → Ministry pages: includes
- Public pages → Live stream: includes
- Events browsing → Event queries: loads events
src/app/(site)/events/page.tsx - Sermon pages → Sermon queries: loads sermons
src/app/(site)/sermons/page.tsx - Ministry pages → Ministry queries: loads ministry
src/app/(site)/ministries/[slug]/page.tsx - Visitor → Public forms: submits forms
- Public forms → Form actions: calls actions
src/sections/prayer-requests-page/prayer-request-form.tsx - Form actions → PostgreSQL database: writes submissions
src/lib/forms.ts - Event queries → PostgreSQL database: reads events
src/server/queries/events.ts - Sermon queries → PostgreSQL database: reads sermons
src/server/queries/sermons.ts - Ministry queries → PostgreSQL database: reads ministries
src/server/queries/ministries.ts - Church staff → Admin sign-in: signs in
- Admin sign-in → Authentication: authenticates
src/app/admin/login/page.tsx - Authentication → PostgreSQL database: checks credentials
src/auth.ts - Church staff → Admin dashboard: manages content
- Admin dashboard → Other content queries: loads overview
src/app/admin/(dashboard)/page.tsx - Content management → Content mutations: runs changes
- Content mutations → PostgreSQL database: writes content
src/server/mutations/service-times.ts - Content management → Vercel Blob: uploads images
- Public pages → Site configuration: uses settings