How hoangnguyen412/life-os works
AI Life OS is a React-and-Express personal productivity workspace. Users authenticate, then manage tasks, goals, and calendar events and review a productivity dashboard; the client calls REST services, while backend services hold feature logic and use MongoDB models. Task and goal progress are linked: task changes trigger goal progress recalculation. The README documents the feature set and architecture; source excerpts show routing and task/goal behavior, but dashboard and calendar backend internals were not sampled, so those details are left broad.
Main entry points: app.js Express app and routes · apiClient.js API client · models User, task, goal, event models · AppLayout.jsx Workspace layout
Components 29
Web workspace
- React app router
client/src/App.jsx - Workspace layout
client/src/layouts/AppLayout.jsx - Task workspace
client/src/pages/TasksPage.jsx - Task editor
client/src/components/tasks/TaskDialog.jsx - Goal workspace
client/src/pages/GoalsPage.jsx - Calendar workspace
client/src/pages/CalendarPage.jsx - Productivity dashboard
client/src/pages/DashboardPage.jsx - API client
client/src/services/apiClient.js - Task API
client/src/services/taskApi.js - Goal API
client/src/services/goalApi.js - Calendar API
client/src/services/calendarApi.js - Dashboard API
client/src/services/dashboardApi.js
Authentication
- Login and registration
client/src/pages - Auth provider
client/src/auth/AuthProvider.jsx - Auth API
client/src/services/authApi.js - Auth routes and controller
server/routes/authRoutes.js - Authentication service
server/services/authService.js
REST backend
- Express app and routes
server/app.js - Task routes and controller
server/routes/taskRoutes.js - Goal routes and controller
server/routes/goalRoutes.js - Event routes and controller
server/routes/eventRoutes.js - Dashboard route and controller
server/routes/dashboardRoutes.js
Product services
- Task lifecycle service
server/services/taskService.js - Goal progress service
server/services/goalService.js - Calendar event service
server/services/eventService.js - Dashboard aggregation
server/services/dashboardService.js
MongoDB models
- User, task, goal, event models
server/models
Other components
- User
- MongoDB
Connections 39
- User → React app router: uses
README.md - React app router → Login and registration: routes to
client/src/App.jsx - React app router → Workspace layout: routes to
client/src/App.jsx - Login and registration → Auth API: submits credentials
- Auth provider → Auth API: requests session
client/src/auth/AuthProvider.jsx - Workspace layout → Task workspace: renders
client/src/App.jsx - Workspace layout → Goal workspace: renders
client/src/App.jsx - Workspace layout → Calendar workspace: renders
client/src/App.jsx - Workspace layout → Productivity dashboard: renders
client/src/App.jsx - Task workspace → Task API: loads tasks
client/src/pages/TasksPage.jsx - Task workspace → Goal API: loads goals
client/src/pages/TasksPage.jsx - Task workspace → Task editor: opens editor
client/src/pages/TasksPage.jsx - Task editor → Task API: writes tasks
client/src/components/tasks/TaskDialog.jsx - Goal workspace → Goal API: manages goals
- Calendar workspace → Calendar API: manages events
client/src/pages/CalendarPage.jsx - Productivity dashboard → Dashboard API: loads summary
- Task API → API client: uses
- Goal API → API client: uses
- Calendar API → API client: uses
- Dashboard API → API client: uses
- Auth API → API client: uses
- API client → Express app and routes: sends REST requests
README.md - Express app and routes → Auth routes and controller: mounts
server/app.js - Express app and routes → Task routes and controller: mounts
server/app.js - Express app and routes → Goal routes and controller: mounts
server/app.js - Express app and routes → Event routes and controller: mounts
server/app.js - Express app and routes → Dashboard route and controller: mounts
server/app.js - Auth routes and controller → Authentication service: dispatches to
server/routes/authRoutes.js - Task routes and controller → Task lifecycle service: dispatches to
- Goal routes and controller → Goal progress service: dispatches to
- Event routes and controller → Calendar event service: dispatches to
- Dashboard route and controller → Dashboard aggregation: dispatches to
- Authentication service → User, task, goal, event models: reads and writes
server/services/authService.js - Task lifecycle service → User, task, goal, event models: reads and writes
server/services/taskService.js - Goal progress service → User, task, goal, event models: reads and writes
server/services/goalService.js - Calendar event service → User, task, goal, event models: reads and writes
server/services/eventService.js - Task lifecycle service → Goal progress service: recalculates progress
server/services/taskService.js - Dashboard aggregation → User, task, goal, event models: summarizes records
- User, task, goal, event models → MongoDB: persists records
README.md