How tejas-rv/apollo-frontend works
Apollo Elevators is a React frontend for public enquiries and admin and engineer operations, backed by a Spring Boot API. The main workflow is role-based entry, then customer/contract administration or engineer service work, with reports and operational data exchanged through a centralized API client. The tree also contains a smaller root-level frontend alongside the fuller apollo-frontend application; both are represented. Links reflect the README and indexed imports, not inspection of every screen or API method.
Main entry points: App.jsx Public and role routes · api.js API client · CustomerForm.jsx Customer and lift records · Bills.jsx Bills and contracts
Components 26
App entry and access
- Public and role routes
apollo-frontend/src/App.jsx - Home and contact
apollo-frontend/src/pages - Login
apollo-frontend/src/pages/Login.jsx - Root frontend routes
src/App.jsx
Admin operations
- Admin dashboard
apollo-frontend/src/pages/Dashboard.jsx - Customer and lift records
apollo-frontend/src/pages/CustomerForm.jsx - Customer details
apollo-frontend/src/pages/CustomerDetails.jsx - Bills and contracts
apollo-frontend/src/pages/Bills.jsx - Enquiries and quotations
apollo-frontend/src/pages/Enquiries.jsx - Coverage and allocation
apollo-frontend/src/pages/Serviceability.jsx - Service visits
apollo-frontend/src/pages/Services.jsx - Work orders
apollo-frontend/src/pages/WorkOrders.jsx - Users and security
apollo-frontend/src/pages/Users.jsx - Notifications
apollo-frontend/src/pages/Notifications.jsx - Root customer and settings screens
src/pages
Engineer service
- Engineer dashboard
apollo-frontend/src/pages/engineer/EngineerDashboard.jsx - Engineer customers
apollo-frontend/src/pages/engineer/EngineerCustomers.jsx - Engineer customer detail
apollo-frontend/src/pages/engineer/EngineerCustomerDetail.jsx - Service reports
apollo-frontend/src/pages/engineer/ServiceReportForm.jsx
Shared services
- API client
apollo-frontend/src/services/api.js - Form validation
apollo-frontend/src/utils/validation.js - Contract calculations
apollo-frontend/src/utils/amc.js - Root API client
src/services/api.js - Session storage
src/services/auth.js
Other components
- Visitor or staff
- Spring Boot API
Connections 44
- Visitor or staff → Public and role routes: uses
README.md - Public and role routes → Home and contact: routes to
apollo-frontend/src/App.jsx - Public and role routes → Login: routes to
apollo-frontend/src/App.jsx - Public and role routes → Admin dashboard: routes to
apollo-frontend/src/App.jsx - Public and role routes → Customer and lift records: routes to
apollo-frontend/src/App.jsx - Public and role routes → Customer details: routes to
apollo-frontend/src/App.jsx - Public and role routes → Bills and contracts: routes to
apollo-frontend/src/App.jsx - Public and role routes → Enquiries and quotations: routes to
apollo-frontend/src/App.jsx - Public and role routes → Coverage and allocation: routes to
apollo-frontend/src/App.jsx - Public and role routes → Service visits: routes to
apollo-frontend/src/App.jsx - Public and role routes → Work orders: routes to
apollo-frontend/src/App.jsx - Public and role routes → Users and security: routes to
apollo-frontend/src/App.jsx - Public and role routes → Notifications: routes to
apollo-frontend/src/App.jsx - Public and role routes → Engineer dashboard: routes to
apollo-frontend/src/App.jsx - Public and role routes → Engineer customers: routes to
apollo-frontend/src/App.jsx - Public and role routes → Engineer customer detail: routes to
apollo-frontend/src/App.jsx - Public and role routes → Service reports: routes to
apollo-frontend/src/App.jsx - Login → API client: authenticates via
apollo-frontend/src/pages/Login.jsx - Admin dashboard → API client: loads data via
apollo-frontend/src/pages/Dashboard.jsx - Customer and lift records → API client: manages records via
apollo-frontend/src/pages/CustomerForm.jsx - Customer details → API client: loads details via
apollo-frontend/src/pages/CustomerDetails.jsx - Bills and contracts → API client: manages billing via
apollo-frontend/src/pages/Bills.jsx - Enquiries and quotations → API client: uses
apollo-frontend/src/pages/Enquiries.jsx - Coverage and allocation → API client: manages coverage via
apollo-frontend/src/pages/Serviceability.jsx - Service visits → API client: manages visits via
apollo-frontend/src/pages/Services.jsx - Work orders → API client: uses
apollo-frontend/src/pages/WorkOrders.jsx - Users and security → API client: manages users via
apollo-frontend/src/pages/Users.jsx - Notifications → API client: uses
- Engineer dashboard → API client: loads assignments via
apollo-frontend/src/pages/engineer/EngineerDashboard.jsx - Engineer customers → API client: searches via
apollo-frontend/src/pages/engineer/EngineerCustomers.jsx - Engineer customer detail → API client: loads customer via
apollo-frontend/src/pages/engineer/EngineerCustomerDetail.jsx - Service reports → API client: submits reports via
apollo-frontend/src/pages/engineer/ServiceReportForm.jsx - Customer and lift records → Form validation: validates with
apollo-frontend/src/pages/CustomerForm.jsx - Bills and contracts → Form validation: validates with
apollo-frontend/src/pages/Bills.jsx - Customer and lift records → Contract calculations: derives contract data
apollo-frontend/src/pages/CustomerForm.jsx - Bills and contracts → Contract calculations: uses contract helpers
apollo-frontend/src/pages/Bills.jsx - Service visits → Contract calculations: uses date helper
apollo-frontend/src/pages/Services.jsx - API client → Spring Boot API: requests data
README.md - Visitor or staff → Root frontend routes: uses
README.md - Root frontend routes → Root customer and settings screens: routes to
src/App.jsx - Root customer and settings screens → Root API client: requests data
src/pages/Customers.jsx - Root frontend routes → Root API client: loads user via
src/App.jsx - Root API client → Session storage: reads session from
src/services/api.js - Root API client → Spring Boot API: requests data
README.md