How aqilfadhil1225/reimbursement works
Reimbursely is a role-based reimbursement workflow: employees create claims, add expenses and receipt evidence, then submit; managers review, finance verifies and records payment. The backend exposes these stages through authenticated APIs, with related user, notification, audit-log and reporting capabilities. The tree documents those supporting areas, but their implementation details and wiring were not sampled, so the graph leaves their internal links out. The frontend dashboard excerpts show manager review behavior; other dashboard and action details are inferred only from their filenames.
Main entry points: app.ts API app · page.tsx App entry · reimbursementRoutes.ts Claim routes · reimbursementController.ts Claim controller
Components 32
Web client
- App entry
frontend/app/page.tsx - Employee dashboard
frontend/app/components/EmployeeDashboard.tsx - Manager dashboard
frontend/app/components/ManagerDashboard.tsx - Finance dashboard
frontend/app/components/FinanceDashboard.tsx - Claim actions
frontend/app/actions/reimbursements.ts
API and access
- API app
backend/src/app.ts - Auth routes
backend/src/routes/authRoutes.ts - Auth controller
backend/src/controllers/authController.ts - Auth service
backend/src/services/authService.ts - Auth model
backend/src/models/authModel.ts - Authentication
backend/src/middleware/authMiddleware.ts
Reimbursement workflow
- Claim routes
backend/src/routes/reimbursementRoutes.ts - Claim controller
backend/src/controllers/reimbursementController.ts - Claim workflow
backend/src/services/reimbursementService.ts - Claim model
backend/src/models/reimbursementModel.ts - Expense routes
backend/src/routes/expenseRoutes.ts - Expense controller
backend/src/controllers/expenseController.ts - Expense service
backend/src/services/expenseService.ts - Payment routes
backend/src/routes/paymentRoutes.ts - Payment controller
backend/src/controllers/paymentController.ts - Payment service
backend/src/services/paymentService.ts - Payment model
backend/src/models/paymentModel.ts - Receipt upload
backend/src/middleware/uploadReceipt.ts - Claim response view
backend/src/views/reimbursementView.ts
Operations and insights
- Audit routes
backend/src/routes/auditLogRoutes.ts - Notification routes
backend/src/routes/notificationRoutes.ts - Report routes
backend/src/routes/reportRoutes.ts - User routes
backend/src/routes/userRoutes.ts
Other components
- Employee
- Manager
- Finance
- Database
Connections 34
- Employee → App entry: uses
- Manager → App entry: uses
- Finance → App entry: uses
- App entry → Employee dashboard: renders
- App entry → Manager dashboard: renders
- App entry → Finance dashboard: renders
- Employee dashboard → Claim actions: claim actions
- Claim actions → API app: API requests
- API app → Auth routes: mounts
- API app → Claim routes: mounts
- API app → Expense routes: mounts
- API app → Payment routes: mounts
- API app → Authentication: authenticates
- Auth routes → Auth controller: dispatches
- Auth controller → Auth service: calls
- Auth service → Auth model: queries
- Claim routes → Claim controller: dispatches
- Claim routes → Receipt upload: uploads
- Claim controller → Claim workflow: calls
- Claim controller → Claim response view: formats response
- Claim workflow → Claim model: reads and writes
- Claim workflow → Database: audits changes
- Expense routes → Expense controller: dispatches
- Expense routes → Receipt upload: uploads
- Expense controller → Expense service: calls
- Expense service → Database: persists expenses
- Payment routes → Payment controller: dispatches
- Payment routes → Receipt upload: uploads
- Payment controller → Payment service: calls
- Payment service → Payment model: reads and writes
- API app → Audit routes: mounts
- API app → Notification routes: mounts
- API app → Report routes: mounts
- API app → User routes: mounts