How japs-system/japs works
This is a bus-transport operations portal for owners, conductors, drivers, and audit tellers. Users sign in, then role-specific workflows manage fleet and schedules, operate trips and ticketing, submit remittances, and review financial activity; owners also access reports and forecasts. The Angular client routes to an Express API, whose handlers use Sequelize models and supporting services. The graph preserves major features named in the tree, but several pages and handlers were not sampled, so their internal calls are omitted rather than inferred.
Main entry points: controllers Domain handlers · index.js API entry · ownerRoutes.js Owner API · app.routes.ts Portal routing
Components 24
Web portal
- Portal routing
client/src/app/app.routes.ts - Login
client/src/app/auth/login-page/login-page.ts - Session service
client/src/app/core/services/auth.service.ts - Access guards
client/src/app/core/guards/auth.guard.ts - Owner operations
client/src/app/features/owner - Conductor operations
client/src/app/features/conductor - Driver operations
client/src/app/features/driver - Audit review
client/src/app/features/audit-teller
API workflows
- API entry
server/index.js - Authentication API
server/routes/authRoutes.js - Owner API
server/routes/ownerRoutes.js - Fleet and routes API
server/routes/busRoutes.js - Conductor API
server/routes/conductorRoutes.js - Driver API
server/routes/driverRoutes.js - Audit API
server/routes/auditTellerRoutes.js - Domain handlers
server/controllers
Domain data
- Domain models
server/models/index.js - SQL database
server/config/database.js
Supporting services
- Forecasting
server/services/forecast/buildForecast.js - Business insights
server/services/insights/buildInsights.js - Remittance detail
server/services/remittance/findRemittanceDetail.js - Notifications
server/services/notificationService.js - Email delivery
server/config/mailer.js
Other components
- Portal users
Connections 28
- Portal users → Login: signs in
- Portal routing → Login: routes to
client/src/app/app.routes.ts - Portal routing → Owner operations: loads
client/src/app/app.routes.ts - Portal routing → Conductor operations: loads
client/src/app/app.routes.ts - Portal routing → Driver operations: loads
client/src/app/app.routes.ts - Portal routing → Audit review: loads
client/src/app/app.routes.ts - Login → Session service: uses
client/src/app/auth/login-page/login-page.ts - Session service → Authentication API: calls
- Access guards → Session service: checks session
client/src/app/core/guards/auth.guard.ts - API entry → Authentication API: mounts
server/index.js - API entry → Owner API: mounts
server/index.js - API entry → Fleet and routes API: mounts
server/index.js - API entry → Conductor API: mounts
server/index.js - API entry → Driver API: mounts
server/index.js - API entry → Audit API: mounts
server/index.js - Owner API → Domain handlers: dispatches
- Fleet and routes API → Domain handlers: dispatches
server/routes/busRoutes.js - Conductor API → Domain handlers: dispatches
server/routes/conductorRoutes.js - Driver API → Domain handlers: dispatches
- Audit API → Domain handlers: dispatches
server/routes/auditTellerRoutes.js - Domain models → SQL database: connects
server/models/index.js - Owner API → Domain models: queries
server/routes/ownerRoutes.js - Owner API → Forecasting: builds forecasts
server/routes/ownerRoutes.js - Owner API → Business insights: builds insights
server/routes/ownerRoutes.js - Owner API → Remittance detail: finds details
server/routes/ownerRoutes.js - Domain handlers → Notifications: notifies
server/controllers/conductorController.js - Notifications → Domain models: writes notifications
server/services/notificationService.js - Domain handlers → Email delivery: sends mail
server/controllers/conductorController.js