How ilavoga/leave-management works
This repository is a leave-management web application: employees can authenticate and submit leave requests, while managers/admins can review requests; the interface also exposes profile, calendar, dashboard, charts and settings. The React app routes users to these screens, with authentication backed by Supabase. The tree indicates dedicated stores and pages for leave requests and approvals, but their implementation and data wiring were not sampled. The Flask server excerpt only exposes a health endpoint, so no leave-processing API connection is shown.
Main entry points: App.tsx Route application · auth.ts Authentication service · SignIn.tsx Sign-in screen · authStore.ts Authentication state
Components 19
Application shell
- Route application
client/src/App.tsx - Main layout
client/src/layout/DefaultLayout.tsx
Identity and profiles
- Sign-in screen
client/src/pages/Authentication/SignIn.tsx - Sign-up screen
client/src/pages/Authentication/SignUp.tsx - Authentication state
client/src/store/authStore.ts - Authentication service
client/src/services/auth.ts
Leave operations
- Leave request form
client/src/pages/Form/LeaveRequest.tsx - Leave state
client/src/store/leaveStore.ts - Leave approval
client/src/pages/LeaveApproval/LeaveApproval.tsx
Workplace views
- Dashboard
client/src/pages/Dashboard/Dashboard.tsx - Calendar
client/src/pages/Calendar.tsx - Profile view
client/src/pages/Profile.tsx - Settings
client/src/pages/Settings.tsx - Charts
client/src/pages/Chart.tsx
Data services
- User profiles
client/src/types/database.ts - Supabase
client/src/config/supabase.ts - Health endpoint
server/app.py
Other components
- Employee
- Administrator
Connections 18
- Employee → Route application: opens app
- Administrator → Route application: opens app
- Route application → Main layout: renders routes
- Route application → Sign-in screen: routes to
- Route application → Sign-up screen: routes to
- Route application → Leave request form: routes to
- Route application → Leave approval: routes to
- Route application → Dashboard: routes to
- Route application → Calendar: routes to
- Route application → Profile view: routes to
- Route application → Settings: routes to
- Route application → Charts: routes to
- Sign-in screen → Authentication state: uses state
- Authentication state → Authentication service: calls sign-in
- Authentication service → Supabase: auth and profile queries
- Authentication service → User profiles: reads profile schema
- Leave request form → Leave state: uses state
- Leave approval → Leave state: uses state