How swejal19/stratify works
Stratify is a role-based goal lifecycle portal: employees submit weighted goal sheets, managers review them, employees record quarterly actuals, and managers/admins monitor results through reports and analytics. Admin capabilities add cycles, onboarding, user governance, shared goals, and audit. The graph follows the documented browser-to-API-to-Supabase boundary and sampled frontend/backend calls; some subsystem wiring is documented but its controller implementation was not sampled, so uncertain links are omitted.
Main entry points: server.js Express API · App.jsx Role-based SPA · db.js Supabase database · ManagerApproval.jsx Manager views
Components 22
Role Workflows
- Role-based SPA
frontend/src/App.jsx - Employee views
frontend/src/pages/EmployeeDashboard.jsx - Manager views
frontend/src/pages/ManagerApproval.jsx - Admin views
frontend/src/pages/admin/AdminDashboard.jsx - API client
frontend/src/lib/api.js
Goal Lifecycle
- Goal sheets
backend/src/controllers/sheets.controller.js - Goal management
backend/src/controllers/goals.controller.js - Quarterly check-ins
backend/src/controllers/achievements.controller.js - Score calculation
backend/src/utils/scoreCalculator.js - Cycle management
backend/src/controllers/cycles.controller.js - Reports and analytics
backend/src/controllers/reports.controller.js
Administration
- Access requests
backend/src/controllers/accessRequest.controller.js - User administration
backend/src/controllers/users.controller.js - Audit logging
backend/src/controllers/audit.controller.js
API Platform
- Authentication
backend/src/controllers/auth.controller.js - Express API
backend/src/server.js - Supabase database
backend/src/config/db.js - Supabase Auth
Other components
- Employee
- Manager
- Admin
- Access requester
Connections 36
- Employee → Role-based SPA: uses
- Manager → Role-based SPA: uses
- Admin → Role-based SPA: uses
- Role-based SPA → Employee views: routes
- Role-based SPA → Manager views: routes
- Role-based SPA → Admin views: routes
- Employee views → API client: requests
- Manager views → API client: requests
- Admin views → API client: requests
- API client → Express API: REST calls
- Express API → Authentication: dispatches
- Express API → Goal sheets: dispatches
- Express API → Goal management: dispatches
- Express API → Quarterly check-ins: dispatches
- Express API → Cycle management: dispatches
- Express API → Reports and analytics: dispatches
- Express API → Access requests: dispatches
- Express API → User administration: dispatches
- Express API → Audit logging: dispatches
- Goal sheets → Supabase database: reads/writes
- Goal management → Supabase database: reads/writes
- Quarterly check-ins → Supabase database: reads/writes
- Cycle management → Supabase database: reads/writes
- Reports and analytics → Supabase database: reads
- Reports and analytics → Score calculation: calculates
- Access requests → Supabase database: reads/writes
- Access requests → Supabase Auth: creates accounts
- User administration → Supabase database: reads/writes
- User administration → Supabase Auth: administers accounts
- Audit logging → Supabase database: reads
- Access requester → Role-based SPA: requests access
- Role-based SPA → Access requests: submits request
- Manager views → Goal sheets: approves/reworks
- Manager views → Quarterly check-ins: saves comments
- Manager views → Goal management: edits goals
- Employee views → Quarterly check-ins: records actuals