LifeOS
A personal planning system: hourly day schedule, habits with streaks, and tasks linked to long-term goals. Sign-in through Google; all documents are isolated by owner in Firestore.
Overview
LifeOS is a personal task-management and day-planning system. The project brings tasks, schedule, habits, goals, analytics, and notes together behind one Google sign-in.
Role and scope
Solo Developer. Built the application with Next.js, Firebase Authentication, and Firestore; the code is divided into App Router, feature components, contexts, hooks, and a data-access layer.
Key features
- Today and Week for planning tasks by day
- Schedule with an hourly timeline
- Habits with current and best streaks
- Goals and links between goals and tasks
- Analytics for task completion and habit activity
- Notes with date-based history
- Profile with Google account data
Architecture
Next.js App Router uses feature components for Today, Habits, Schedule, Goals, Analytics, and Notes. Firebase Authentication handles sign-in, Firestore stores data, and Firestore rules restrict documents to their owner. Shared subscriptions and operations are kept in hooks and lib.
Technical decisions
- Owner-scoped Firestore rules: documents are available only to the corresponding user.
- The schedule uses @dnd-kit/core rather than a separate drag-and-drop layer.
- Analytics charts are built manually with SVG without a charting library.
- Russian and English support is organized through next-intl and message dictionaries.