How gsravan0518/peniel_church_management works
Peniel Evangelical Fellowship is a church website and member-management application. Visitors browse church information and media; believers can register, share prayers, and request event bookings; pastors review requests and use a calendar with day-of notifications; admins manage users, gallery content, and messages. The React app calls an Express API backed by MongoDB. The sampled auth and scheduling code supports the specific relationships shown; other feature routes are included from the documented capabilities, but their internal calls are not inferred.
Main entry points: App.jsx React Router · server.js Express API · AdminDashboard.jsx Admin Dashboard · auth.js Authentication API
Components 25
Church Website
- React Router
frontend/src/App.jsx - Public Pages
frontend/src/pages/Home.jsx - Events And Bookings
frontend/src/pages/Events.jsx - Prayer Wall
frontend/src/pages/PrayerWall.jsx - Gallery
frontend/src/pages/Gallery.jsx - Contact
frontend/src/pages/Contact.jsx
Accounts And Roles
- Login And Registration
frontend/src/pages/Login.jsx - Auth Context
frontend/src/context/AuthContext.jsx - Member Dashboard
frontend/src/pages/MemberDashboard.jsx - Pastor Dashboard
frontend/src/pages/PastorDashboard.jsx - Admin Dashboard
frontend/src/pages/AdminDashboard.jsx - Authentication API
backend/routes/auth.js
Church Operations
- Program Booking API
backend/routes/homePrograms.js - Prayer API
backend/routes/prayers.js - Calendar API
backend/routes/calendar.js - Notification API
backend/routes/notifications.js - Day-Of Scheduler
backend/utils/dayOfProgramJob.js - Calendar And Time Logic
backend/utils/time.js
API And Data
- API Client
frontend/src/api/axios.js - Express API
backend/server.js - Admin And Content APIs
backend/routes/dashboard.js - User Records
backend/models/User.js - Notification Records
backend/models/Notification.js
Other components
- Visitor Or Member
- MongoDB
Connections 29
- Visitor Or Member → React Router: opens
- React Router → Public Pages: routes
- React Router → Events And Bookings: routes
- React Router → Prayer Wall: routes
- React Router → Gallery: routes
- React Router → Contact: routes
- React Router → Login And Registration: routes
- React Router → Member Dashboard: routes
- React Router → Pastor Dashboard: routes
- React Router → Admin Dashboard: routes
- Login And Registration → Auth Context: uses
- Auth Context → API Client: requests
- Admin Dashboard → API Client: requests
- Express API → Authentication API: mounts
- Express API → Program Booking API: mounts
- Express API → Prayer API: mounts
- Express API → Calendar API: mounts
- Express API → Notification API: mounts
- Express API → Admin And Content APIs: mounts
- API Client → Express API: HTTP requests
- Authentication API → User Records: queries and updates
- Authentication API → Notification Records: creates
- Day-Of Scheduler → Calendar And Time Logic: runs scheduling
- Calendar And Time Logic → Notification Records: creates day-of alerts
- Calendar And Time Logic → MongoDB: reads and writes
- User Records → MongoDB: persists records
- Notification Records → MongoDB: persists records
- Admin Dashboard → Admin And Content APIs: loads dashboard
- Admin Dashboard → Program Booking API: updates status