How jblms00/jomich-academic-commissions works
JoMich’s Academic Commissions is a public services and portfolio website with a protected administration area. Visitors browse service information, transaction proofs, and testimonials; administrators sign in, manage proof uploads and profile details, and access dashboard functions. The repository also includes PHP/MySQL APIs for authentication, proofs, reviews, settings, and admin statistics. The sampled dashboard uses Supabase directly for authentication and proof management, while the README documents a PHP/MySQL backend; the excerpts do not establish how all frontend features connect to those APIs.
Main entry points: database.php Database Connection · AdminDashboard.jsx Admin Dashboard · api.js API Client · App.jsx App Router
Components 22
Public Website
- App Router
frontend/src/App.jsx - Home Page
frontend/src/pages/Home.jsx - Service Offering
frontend/src/components/public/Services.jsx - Proof Gallery
frontend/src/components/public/Proofs.jsx - Testimonials
frontend/src/components/public/Reviews.jsx - Review Content
frontend/src/data/staticReviews.js
Admin Console
- Admin Login
frontend/src/pages/admin/AdminLogin.jsx - Auth Session
frontend/src/context/AuthContext.jsx - Route Guard
frontend/src/components/admin/ProtectedRoute.jsx - Admin Dashboard
frontend/src/pages/admin/AdminDashboard.jsx - API Client
frontend/src/services/api.js
PHP API
- PHP Authentication
backend/api/auth - PHP Proof API
backend/api/proofs - PHP Review API
backend/api/reviews - PHP Settings API
backend/api/settings - Admin Statistics
backend/api/admin/stats.php
Data Services
- Database Connection
backend/config/database.php - Supabase Client
frontend/src/services/supabaseClient.js
Other components
- Visitor
- Administrator
- Supabase
- MySQL Database
Connections 27
- Visitor → App Router: opens site
- App Router → Home Page: routes to
- Home Page → Service Offering: renders
- Home Page → Proof Gallery: renders
- Home Page → Testimonials: renders
- Testimonials → Review Content: reads
- App Router → Admin Login: routes to
- App Router → Route Guard: guards admin
- Route Guard → Admin Dashboard: renders when allowed
- Administrator → Admin Login: signs in
- Admin Login → Auth Session: uses login
- Auth Session → Supabase Client: calls auth
- Supabase Client → Supabase: connects
- Admin Dashboard → Supabase Client: reads and writes proofs
- Admin Dashboard → Supabase: uploads and removes proof images
- Admin Dashboard → Auth Session: uses session and logout
- Admin Dashboard → Supabase: reads statistics; updates profile
- API Client → PHP Authentication
- API Client → PHP Proof API
- API Client → PHP Review API
- API Client → PHP Settings API
- PHP Authentication → Database Connection: uses connection
- PHP Proof API → Database Connection: uses connection
- PHP Review API → Database Connection: uses connection
- PHP Settings API → Database Connection: uses connection
- Admin Statistics → Database Connection: uses connection
- Database Connection → MySQL Database: connects