How laibatajshaik/parking-management works
Shnoor Parking is a role-based parking operations product: customers can browse plans and reserve parking, staff manage gate entry, slot assignment, fees and payment, and administrators oversee facilities, users, pricing and reports. The frontend routes users into protected role dashboards; its screens communicate with a central Express API backed by PostgreSQL. Notifications and email support account, reservation, payment and operational events. The README is empty, and the sampled backend source is partial, so unsampled API wiring and individual dashboard actions are represented only where the tree or excerpts support them.
Main entry points: StaffDashboard.jsx Staff dashboard · server.js Express API · App.jsx Role-based routing · AdminDashboard.jsx Admin dashboard
Components 26
Web client
- Role-based routing
frontend/src/App.jsx - Login and signup
frontend/src/SignUp.jsx - Customer dashboard
frontend/src/CustomerDashboard.jsx - Staff dashboard
frontend/src/StaffDashboard.jsx - Admin dashboard
frontend/src/AdminDashboard.jsx
Parking operations
- Plan and reservation
frontend/src/pages/customer/ReserveParking.jsx - Parking and receipts
frontend/src/pages/customer/MyParking.jsx - Vehicle check-in
frontend/src/pages/staff/VehicleEntry.jsx - Reservation validation
frontend/src/pages/staff/ReservationValidation.jsx - Fee calculation
frontend/src/pages/staff/FeeCalculation.jsx - Payment processing
frontend/src/pages/staff/Payment.jsx - Vehicle exit
frontend/src/pages/staff/VehicleExit.jsx
Administration
- Slot management
frontend/src/pages/admin/ParkingSlotManagement.jsx - Active sessions
frontend/src/pages/admin/ActiveParkingSessions.jsx - Pricing plans
frontend/src/pages/admin/PricingPlans.jsx - Reports and revenue
frontend/src/pages/admin/ReportsAnalytics.jsx
Backend services
- Express API
backend/server.js - Database connection
backend/db.js - PostgreSQL data
- Notification service
backend/modules/notifications/notificationService.js - Notification routes
backend/modules/notifications/notificationRoutes.js - Notification controller
backend/modules/notifications/notificationController.js - Email service
backend/modules/email/emailService.js
Other components
- Customer / staff / admin
- Email provider
- Google identity
Connections 28
- Customer / staff / admin → Role-based routing: uses
- Role-based routing → Login and signup: routes to
- Role-based routing → Customer dashboard: routes to
- Role-based routing → Staff dashboard: routes to
- Role-based routing → Admin dashboard: routes to
- Customer dashboard → Plan and reservation: opens
- Customer dashboard → Parking and receipts: opens
- Staff dashboard → Vehicle check-in: opens
- Staff dashboard → Reservation validation: opens
- Staff dashboard → Fee calculation: opens
- Staff dashboard → Payment processing: opens
- Staff dashboard → Vehicle exit: opens
- Admin dashboard → Slot management: opens
- Admin dashboard → Active sessions: opens
- Admin dashboard → Pricing plans: opens
- Admin dashboard → Reports and revenue: opens
- Plan and reservation → Express API: requests plans
- Vehicle check-in → Express API: submits entry
- Express API → Database connection: queries
- Database connection → PostgreSQL data: reads / writes
- Express API → Notification service: dispatches
- Notification routes → Notification controller: dispatches
- Notification controller → Notification service: calls
- Notification service → Database connection: queries
- Express API → Email service: sends email
- Email service → Email provider: sends via
- Login and signup → Google identity: authenticates with
- Login and signup → Express API: exchanges credentials