How tamerrabee2/medclinic-ai works
MedClinic AI is a multi-tenant clinic management system: clinic staff use its dashboard to manage patients, appointments, clinical records, and operational services. The documented product also includes AI assistance, laboratory and radiology workflows, billing, analytics, notifications, and compliance auditing. The sampled code shows invoice requests reading and writing through the application database context, and tenant filtering at the persistence layer. Most other feature branches are documented in the README but their runtime wiring was not sampled, so those relationships are left unasserted.
Main entry points: api.ts Frontend API client · ApplicationDbContext.cs Tenant-aware persistence · InvoicesController.cs Billing · Patient.cs Patient records
Components 21
Clinic interface
- Clinic dashboard
frontend/src/app/dashboard/page.tsx - Frontend API client
frontend/src/lib/api.ts
API and access
- Authentication API
src/MedClinic.API/Controllers/AuthController.cs - Permission authorization
src/MedClinic.API/Authorization/PermissionAuthorizationHandler.cs
Clinical workflows
- Patient records
src/MedClinic.Domain/Entities/Patient.cs - Appointments
src/MedClinic.Domain/Entities/Appointment.cs - Visits and EMR
src/MedClinic.API/Controllers/VisitsController.cs - Prescriptions
src/MedClinic.API/Controllers/PrescriptionsController.cs - Laboratory
src/MedClinic.API/Controllers/LabOrdersController.cs - Radiology
src/MedClinic.API/Controllers/RadiologyController.cs - AI assistance
src/MedClinic.API/Controllers/AIController.cs
Clinic operations
- Billing
src/MedClinic.API/Controllers/InvoicesController.cs - Analytics and reports
src/MedClinic.API/Controllers/AnalyticsController.cs - Notifications
src/MedClinic.Infrastructure/Notifications/NotificationService.cs - Audit and compliance
src/MedClinic.API/Controllers/AuditExplorerController.cs
Shared foundation
- Clinic tenancy
src/MedClinic.Domain/Entities/Clinic.cs - Application data contract
src/MedClinic.Application/Interfaces/IApplicationDbContext.cs - Tenant-aware persistence
src/MedClinic.Infrastructure/Persistence/ApplicationDbContext.cs - Use-case results
src/MedClinic.Application/Common/Models/Result.cs - Permission definitions
src/MedClinic.Shared/Constants/Permissions.cs
Other components
- Clinic staff
Connections 30
- Clinic staff → Clinic dashboard: uses
- Clinic dashboard → Frontend API client: requests data
- Frontend API client → Authentication API: calls API
- Frontend API client → Patient records: calls API
- Frontend API client → Appointments: calls API
- Frontend API client → Visits and EMR: calls API
- Frontend API client → Prescriptions: calls API
- Frontend API client → Laboratory: calls API
- Frontend API client → Radiology: calls API
- Frontend API client → AI assistance: calls API
- Frontend API client → Billing: calls API
- Frontend API client → Analytics and reports: calls API
- Frontend API client → Notifications: calls API
- Frontend API client → Audit and compliance: calls API
- Permission authorization → Permission definitions: checks
src/MedClinic.API/Authorization/PermissionAuthorizationHandler.cs - Billing → Application data contract: reads and writes
src/MedClinic.API/Controllers/InvoicesController.cs - Application data contract → Tenant-aware persistence: implemented by
src/MedClinic.Infrastructure/Persistence/ApplicationDbContext.cs - Tenant-aware persistence → Clinic tenancy: filters by tenant
src/MedClinic.Infrastructure/Persistence/ApplicationDbContext.cs - Visits and EMR → Application data contract: reads and writes
- Patient records → Tenant-aware persistence: stored in
src/MedClinic.Infrastructure/Persistence/ApplicationDbContext.cs - Appointments → Tenant-aware persistence: stored in
src/MedClinic.Infrastructure/Persistence/ApplicationDbContext.cs - Prescriptions → Tenant-aware persistence: stored in
- Laboratory → Tenant-aware persistence: stored in
- Radiology → Tenant-aware persistence: stored in
- AI assistance → Tenant-aware persistence: stored in
- Billing → Tenant-aware persistence: stores invoices
src/MedClinic.API/Controllers/InvoicesController.cs - Analytics and reports → Tenant-aware persistence: reads data
- Notifications → Tenant-aware persistence: reads and writes
- Audit and compliance → Tenant-aware persistence: reads audit data
src/MedClinic.API/Controllers/AuditExplorerController.cs - Use-case results → Patient records: supports use cases