How tunsopheak/team-management works
LeaderSync is a bilingual team and assignment tracker. Members join or are invited to groups, post daily standups, and update assigned work; team leads assign tasks and review submissions. The React app presents group, task, standup, member, dashboard, and report features through shared session state, while the Express API handles authentication and domain operations backed by PostgreSQL or local PGlite. The graph preserves documented capabilities, but the API client and several UI modules were not excerpted, so unshown HTTP and component-to-data links are omitted.
Main entry points: App.tsx App shell · app.ts HTTP application · index.ts Database adapter · groups.ts Group operations
Components 23
Web app
- App shell
client/src/App.tsx - Session state
client/src/context/AppContext.tsx - Group workspace
client/src/components/GroupBanner.tsx - Task board
client/src/components/TaskBoard.tsx - Daily standups
client/src/components/DailyFeed.tsx - Dashboard
client/src/components/OverviewDashboard.tsx - Members
client/src/components/MembersList.tsx - Assignment reports
client/src/components/AssignmentReportModal.tsx - Sign in and register
client/src/components/AuthScreen.tsx - API client
client/src/lib/api.ts
API
- HTTP application
server/app.ts - Authentication
server/routes/auth.ts - Group operations
server/routes/groups.ts - User operations
server/routes/users.ts - Task operations
server/routes/tasks.ts - Daily log operations
server/routes/dailyLogs.ts - Workspace bootstrap
server/routes/bootstrap.ts - Auth middleware
server/middleware/auth.ts
Domain services
- Role access
server/services/access.ts - Activity logging
server/services/activity.ts - API data mapping
server/services/mappers.ts
Persistence
- Database adapter
server/db/index.ts
Other components
- People
Connections 37
- People → App shell: uses
client/src/App.tsx - App shell → Session state: provides state
client/src/App.tsx - App shell → Group workspace: renders
client/src/App.tsx - App shell → Task board: renders
client/src/App.tsx - App shell → Daily standups: renders
client/src/App.tsx - App shell → Dashboard: renders
client/src/App.tsx - App shell → Members: renders
client/src/App.tsx - App shell → Assignment reports: renders
client/src/App.tsx - App shell → Sign in and register: renders
client/src/App.tsx - Session state → API client: calls
client/src/context/AppContext.tsx - HTTP application → Authentication: mounts
server/app.ts - HTTP application → Auth middleware: protects routes
server/app.ts - HTTP application → Group operations: mounts
server/app.ts - HTTP application → User operations: mounts
server/app.ts - HTTP application → Task operations: mounts
server/app.ts - HTTP application → Daily log operations: mounts
server/app.ts - HTTP application → Workspace bootstrap: mounts
server/app.ts - Auth middleware → Database adapter: loads user
server/middleware/auth.ts - Auth middleware → API data mapping: maps user
server/middleware/auth.ts - Authentication → Database adapter: queries
server/routes/auth.ts - Authentication → Auth middleware: uses cookies
server/routes/auth.ts - Group operations → Database adapter: queries
server/routes/groups.ts - Group operations → Role access: checks permissions
server/routes/groups.ts - Group operations → Activity logging: records changes
server/routes/groups.ts - Group operations → API data mapping: maps records
server/routes/groups.ts - User operations → Database adapter: queries
server/routes/users.ts - User operations → Role access: checks permissions
server/routes/users.ts - User operations → Activity logging: records changes
server/routes/users.ts - Task operations → Database adapter: queries
server/routes/tasks.ts - Task operations → Role access: checks permissions
server/routes/tasks.ts - Task operations → Activity logging: records changes
server/routes/tasks.ts - Daily log operations → Database adapter: queries
server/routes/dailyLogs.ts - Daily log operations → Role access: checks permissions
server/routes/dailyLogs.ts - Daily log operations → Activity logging: records changes
server/routes/dailyLogs.ts - Workspace bootstrap → Database adapter: loads workspace
server/routes/bootstrap.ts - Workspace bootstrap → Role access: checks access
server/routes/bootstrap.ts - Workspace bootstrap → API data mapping: maps records
server/routes/bootstrap.ts