How pavanirathnatunga99-tech/sunrise-dental-clinic works
Sunrise Dental Clinic is a browser-based clinic-management product backed by a secured Spring REST service and MySQL. Staff sign in, then manage patients, appointments, dentists and treatments, billing, and daily reporting through the React client; appointment booking checks dentist availability and can lead to billing and payment tracking. The graph separates frontend workflows, backend API/service logic, and domain persistence. README statements establish the distributed architecture and major capabilities; unsampled page and security internals are represented only at their documented boundaries.
Main entry points: api.js HTTP API client · App.jsx Routed application · ClinicService.java Clinic rules and transactions · ClinicController.java Clinic REST routes
Components 22
React clinic client
- Routed application
frontend/src/App.jsx - HTTP API client
frontend/src/api.js - Appointment workflow
frontend/src/pages/Appointments.jsx - Patient management
frontend/src/pages/Patients.jsx - Billing and receipts
frontend/src/pages/Billing.jsx - Daily dashboard
frontend/src/pages/Dashboard.jsx - Dentist and treatment admin
frontend/src/pages/Manage.jsx - Login and signup
frontend/src/pages/Login.jsx
Spring API and rules
- Clinic REST routes
backend/src/main/java/com/sunrise/dental/controller/ClinicController.java - Clinic rules and transactions
backend/src/main/java/com/sunrise/dental/service/ClinicService.java - Validated request DTOs
backend/src/main/java/com/sunrise/dental/dto/Requests.java
Clinic data and persistence
- Patient records
backend/src/main/java/com/sunrise/dental/entity/Patient.java - Appointment records
backend/src/main/java/com/sunrise/dental/entity/Appointment.java - Bills and payments
backend/src/main/java/com/sunrise/dental/entity/Bill.java - Dentist records
backend/src/main/java/com/sunrise/dental/entity/Dentist.java - Treatment catalogue
backend/src/main/java/com/sunrise/dental/entity/Treatment.java - Spring Data repositories
backend/src/main/java/com/sunrise/dental/repository
Staff identity
- Authentication routes
backend/src/main/java/com/sunrise/dental/controller/AuthController.java - JWT creation
backend/src/main/java/com/sunrise/dental/security/JwtService.java - Staff accounts
backend/src/main/java/com/sunrise/dental/entity/User.java
Other components
- Clinic staff
- MySQL database
Connections 28
- Clinic staff → Routed application: uses
frontend/src/App.jsx - Routed application → Appointment workflow: routes to
frontend/src/App.jsx - Routed application → Patient management: routes to
frontend/src/App.jsx - Routed application → Billing and receipts: routes to
frontend/src/App.jsx - Routed application → Daily dashboard: routes to
frontend/src/App.jsx - Routed application → Dentist and treatment admin: routes to
frontend/src/App.jsx - Routed application → Login and signup: routes to
frontend/src/App.jsx - Appointment workflow → HTTP API client: calls
frontend/src/pages/Appointments.jsx - Patient management → HTTP API client: calls
frontend/src/pages/Patients.jsx - Billing and receipts → HTTP API client: calls
frontend/src/pages/Billing.jsx - Daily dashboard → HTTP API client: calls
frontend/src/pages/Dashboard.jsx - Dentist and treatment admin → HTTP API client: calls
frontend/src/pages/Manage.jsx - Login and signup → HTTP API client: calls
frontend/src/pages/Login.jsx - HTTP API client → Clinic REST routes: sends JSON requests
README.md - HTTP API client → Authentication routes: sends login requests
README.md - Clinic REST routes → Clinic rules and transactions: delegates clinic operations
backend/src/main/java/com/sunrise/dental/controller/ClinicController.java - Clinic REST routes → Dentist records: reads catalogue
backend/src/main/java/com/sunrise/dental/controller/ClinicController.java - Clinic REST routes → Treatment catalogue: reads catalogue
backend/src/main/java/com/sunrise/dental/controller/ClinicController.java - Clinic REST routes → Validated request DTOs: accepts inputs
backend/src/main/java/com/sunrise/dental/controller/ClinicController.java - Authentication routes → Staff accounts: authenticates accounts
backend/src/main/java/com/sunrise/dental/controller/AuthController.java - Authentication routes → JWT creation: creates tokens
backend/src/main/java/com/sunrise/dental/controller/AuthController.java - Clinic rules and transactions → Spring Data repositories: reads and writes
backend/src/main/java/com/sunrise/dental/service/ClinicService.java - Spring Data repositories → MySQL database: persists entities
README.md - Clinic rules and transactions → Patient records: updates records
backend/src/main/java/com/sunrise/dental/service/ClinicService.java - Clinic rules and transactions → Appointment records: books and updates
backend/src/main/java/com/sunrise/dental/service/ClinicService.java - Clinic rules and transactions → Dentist records: checks availability
backend/src/main/java/com/sunrise/dental/service/ClinicService.java - Clinic rules and transactions → Treatment catalogue: assigns and prices
backend/src/main/java/com/sunrise/dental/service/ClinicService.java - Clinic rules and transactions → Bills and payments: generates and pays
backend/src/main/java/com/sunrise/dental/service/ClinicService.java