How ahmedmoosaadnan/dental-care works
This is a dental-clinic management app. A clinic user enters through the application shell, authenticates, and then uses routed modules for patient care, scheduling, point-of-sale, and clinic operations; those modules use Firebase-backed data services. The source index supports the route and dependency map, while sampled excerpts confirm authentication/profile handling and media reads and writes. Several page implementations were not excerpted, so their data links reflect indexed references rather than inspected call details.
Main entry points: App.tsx App router · firebase.ts Firebase setup · useAuthStore.ts Auth store · DashboardLayout.tsx Dashboard shell
Components 24
App entry
- App router
src/App.tsx - Dashboard shell
src/components/DashboardLayout.tsx - Login
src/pages/Login.tsx - Registration
src/pages/Register.tsx - Overview
src/pages/Overview.tsx
Clinical workflow
- Patients
src/pages/Patients.tsx - Appointments
src/pages/Appointments.tsx - Doctors
src/pages/Doctors.tsx - Treatments
src/pages/Treatments.tsx - Follow-ups
src/pages/FollowUps.tsx
Clinic operations
- Point of sale
src/pages/POS.tsx - Inventory
src/pages/Inventory.tsx - Journal
src/pages/Journal.tsx - Reminders
src/pages/Reminders.tsx - Notifications
src/pages/Notifications.tsx - Reports
src/pages/Reports.tsx - Settings
src/pages/Settings.tsx - Media manager
src/pages/MediaManager.tsx
Identity and data
- Auth store
src/store/useAuthStore.ts - Firebase setup
src/lib/firebase.ts - Database helpers
src/lib/db.ts - Cloud Firestore
- Firebase Auth
Other components
- Clinic user
Connections 39
- Clinic user → App router: opens
src/App.tsx - App router → Auth store: initializes
src/App.tsx - App router → Dashboard shell: renders
src/App.tsx - App router → Login: routes to
src/App.tsx - App router → Registration: routes to
src/App.tsx - App router → Overview: routes to
src/App.tsx - App router → Patients: routes to
src/App.tsx - App router → Appointments: routes to
src/App.tsx - App router → Doctors: routes to
src/App.tsx - App router → Treatments: routes to
src/App.tsx - App router → Follow-ups: routes to
src/App.tsx - App router → Point of sale: routes to
src/App.tsx - App router → Inventory: routes to
src/App.tsx - App router → Journal: routes to
src/App.tsx - App router → Reminders: routes to
src/App.tsx - App router → Notifications: routes to
src/App.tsx - App router → Reports: routes to
src/App.tsx - App router → Settings: routes to
src/App.tsx - App router → Media manager: routes to
src/App.tsx - Auth store → Firebase setup: uses SDK
src/store/useAuthStore.ts - Firebase setup → Firebase Auth: configures
src/lib/firebase.ts - Auth store → Cloud Firestore: reads profiles
src/store/useAuthStore.ts - Auth store → Firebase Auth: observes session
src/store/useAuthStore.ts - Dashboard shell → Auth store: reads state
src/components/DashboardLayout.tsx - Dashboard shell → Firebase setup: uses SDK
src/components/DashboardLayout.tsx - Patients → Firebase setup: uses data SDK
src/pages/Patients.tsx - Appointments → Firebase setup: uses data SDK
src/pages/Appointments.tsx - Doctors → Firebase setup: uses data SDK
src/pages/Doctors.tsx - Treatments → Firebase setup: uses data SDK
src/pages/Treatments.tsx - Follow-ups → Firebase setup: uses data SDK
src/pages/FollowUps.tsx - Point of sale → Database helpers: uses helpers
src/pages/POS.tsx - Database helpers → Firebase setup: uses SDK
src/lib/db.ts - Inventory → Firebase setup: uses data SDK
src/pages/Inventory.tsx - Journal → Firebase setup: uses data SDK
src/pages/Journal.tsx - Reminders → Firebase setup: uses data SDK
src/pages/Reminders.tsx - Notifications → Firebase setup: uses data SDK
src/pages/Notifications.tsx - Settings → Firebase setup: uses data SDK
src/pages/Settings.tsx - Media manager → Cloud Firestore: reads and writes
src/pages/MediaManager.tsx - Firebase setup → Cloud Firestore: provides client
src/lib/firebase.ts