How xenon110/task_management_bkm works
This is a workforce and project-management application: users sign in, enter a routed workspace, and manage tasks, projects, teams, and attendance. Zustand stores hold domain state and connect several workflows to Supabase; the attendance experience also includes desktop-device support. The graph reflects explicit route, import, and call evidence. Several listed features have only file-tree or SOURCE INDEX support, so their internal interactions are not expanded.
Main entry points: App.tsx Router · useTaskStore.ts Task State · useAuthStore.ts Authentication State · useAttendanceStore.ts Attendance State
Components 25
Application
- Router
src/App.tsx - Workspace Layout
src/layouts/MainLayout.tsx - Sign In
src/pages/LoginPage.tsx - Dashboard
src/pages/DashboardPage.tsx
Work Management
- Task Views
src/pages/TasksPage.tsx - Task Details
src/components/TaskDetailPanel.tsx - Board View
src/components/BoardView.tsx - Project Views
src/pages/ProjectsPage.tsx
People and Attendance
- Team Management
src/pages/TeamsPage.tsx - Member Details
src/components/MemberDetailModal.tsx - Attendance
src/pages/AttendancePage.tsx - Employee Data
src/utils/employeeDataMap.ts
State and Services
- Project State
src/store/useProjectStore.ts - Task State
src/store/useTaskStore.ts - Goal State
src/store/useGoalStore.ts - Attendance State
src/store/useAttendanceStore.ts - Authentication State
src/store/useAuthStore.ts - Workspace State
src/store/useWorkspaceStore.ts - Role Permissions
src/hooks/usePermissions.ts
Other components
- User
- Supabase
- Attendance Functions
supabase/functions/attendance-punch/index.ts - Desktop Bridge
attendance-desktop/electron/preload/preload.ts - Device Identity
attendance-desktop/electron/device/identity.ts - Desktop Main
attendance-desktop/electron/main/main.ts
Connections 40
- User → Router: uses
src/App.tsx - Router → Authentication State: checks session
src/App.tsx - Router → Sign In: routes to
src/App.tsx - Router → Workspace Layout: routes to
src/App.tsx - Router → Dashboard: routes to
src/App.tsx - Router → Task Views: routes to
src/App.tsx - Router → Project Views: routes to
src/App.tsx - Router → Team Management: routes to
src/App.tsx - Router → Attendance: routes to
src/App.tsx - Sign In → Authentication State: uses
src/pages/LoginPage.tsx - Workspace Layout → Authentication State: uses
src/layouts/MainLayout.tsx - Workspace Layout → Task State: uses
src/layouts/MainLayout.tsx - Workspace Layout → Workspace State: uses
src/layouts/MainLayout.tsx - Dashboard → Task State: reads
src/pages/DashboardPage.tsx - Dashboard → Project State: reads
src/pages/DashboardPage.tsx - Dashboard → Goal State: reads
src/pages/DashboardPage.tsx - Task Views → Task State: uses
src/pages/TasksPage.tsx - Task Views → Board View: renders
src/pages/TasksPage.tsx - Task Details → Task State: uses
src/components/TaskDetailPanel.tsx - Project Views → Project State: uses
src/pages/ProjectsPage.tsx - Project Views → Task State: uses
src/pages/ProjectsPage.tsx - Team Management → Workspace State: uses
src/pages/TeamsPage.tsx - Team Management → Member Details: renders
src/pages/TeamsPage.tsx - Team Management → Role Permissions: checks
src/pages/TeamsPage.tsx - Member Details → Attendance State: uses
src/components/MemberDetailModal.tsx - Member Details → Employee Data: looks up
src/components/MemberDetailModal.tsx - Attendance → Attendance State: uses
src/pages/AttendancePage.tsx - Attendance → Workspace State: uses
src/pages/AttendancePage.tsx - Attendance → Employee Data: looks up
src/pages/AttendancePage.tsx - Authentication State → Supabase: queries
src/store/useAuthStore.ts - Workspace State → Supabase: queries
src/store/useWorkspaceStore.ts - Task State → Supabase: queries
src/store/useTaskStore.ts - Project State → Supabase: queries
src/store/useProjectStore.ts - Attendance State → Supabase: queries
src/store/useAttendanceStore.ts - Authentication State → Workspace State: updates
src/store/useAuthStore.ts - Authentication State → Task State: uses
src/store/useAuthStore.ts - Task State → Goal State
- Attendance State → Attendance Functions: invokes
- Attendance State → Desktop Bridge: uses bridge
- Desktop Main → Device Identity: uses
attendance-desktop/electron/main/main.ts