A comprehensive personal productivity and well-being platform that combines journaling, habit tracking, project management, and task organization in one seamless experience.
LifeOS is designed to be your central hub for personal growth and productivity. Whether you're tracking daily habits, reflecting through journaling, managing complex projects, or staying on top of tasks, LifeOS provides the tools and insights you need to build a more intentional life.
- Integration over Fragmentation: All your productivity tools work together
- Reflection over Just Action: Built-in journaling encourages mindful progress
- Habits over Goals: Focus on sustainable daily practices
- Insights over Data: Meaningful visualizations that drive action
- Daily Reflection: One journal entry per day with mood tracking
- Integrated Habit Tracking: Log habit completion directly in your journal
- Rich Content: Add titles, detailed content, and emotional context
- Multiple Views: Calendar and list views for easy navigation
- Search & Filter: Find past entries quickly with full-text search
- Visual Habit Creation: Custom icons, colors, and descriptions
- Smart Analytics: Streak tracking, completion rates, and trend analysis
- Heatmap Visualization: GitHub-style activity heatmaps for long-term patterns
- Flexible Management: Activate/deactivate habits as your routine evolves
- Historical Insights: View patterns and improvements over time
- Hierarchical Organization: Projects contain tasks, or manage standalone tasks
- Priority & Status Tracking: Low/Medium/High priorities with status workflows
- Due Date Management: Never miss important deadlines
- Visual Project Identity: Custom colors and icons for quick recognition
- Progress Tracking: Automatic completion percentages and statistics
- Archive System: Keep completed projects organized without clutter
- Activity Overview: See your day at a glance
- Progress Visualization: Charts and graphs for habits, projects, and mood trends
- Quick Actions: Create entries, tasks, or projects without navigation
- Recent Activity: Stay connected to your latest work
- Insightful Metrics: Understand your productivity patterns
- Customizable Sessions: Adjust work and break durations
- Auto-transitions: Seamless flow between work and rest
- Session Tracking: Count completed pomodoros daily
- Smart Notifications: Audio and browser notifications
- Focus Integration: Works alongside your other productivity tools
- Dark/Light Themes: Comfortable viewing any time of day
- Responsive Design: Seamless experience across desktop and mobile
- Intuitive Navigation: Organized by workflows, not features
- Modern UI: Clean, distraction-free interface using shadcn/ui components
- Next.js 15: App Router with React Server Components
- React 19: Latest React features and concurrent rendering
- TypeScript: Full type safety throughout the application
- Tailwind CSS: Utility-first styling with custom design system
- shadcn/ui: High-quality, accessible UI components
- Next.js API Routes: Serverless API endpoints
- Prisma ORM: Type-safe database operations with migrations
- PostgreSQL: Robust relational database for complex data relationships
- Clerk Authentication: Secure user management with social login
- TypeScript: Full type coverage for better DX and fewer bugs
- ESLint & Prettier: Consistent code formatting and quality
- Prisma Studio: Visual database management
- Hot Reloading: Instant feedback during development
- Node.js v20 or higher
- npm or yarn package manager
- PostgreSQL database (local or hosted)
- Clerk account for authentication
-
Clone the repository
git clone https://github.com/yourusername/lifeos.git cd lifeos -
Install dependencies
npm install # or yarn install -
Set up environment variables
Create a
.env.localfile in the root directory:# Clerk Authentication NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_... CLERK_SECRET_KEY=sk_test_... # Database DATABASE_URL="postgresql://username:password@localhost:5432/lifeos?schema=public"
-
Set up the database
# Generate Prisma client npx prisma generate # Run database migrations npx prisma migrate dev # (Optional) Seed with sample data npx prisma db seed
-
Start the development server
npm run dev
-
Open your browser
Navigate to http://localhost:3000
- Create a free account at Clerk.dev
- Create a new application
- Copy your publishable and secret keys to your
.env.localfile - Configure your sign-in/sign-up preferences in the Clerk dashboard
Local PostgreSQL:
# macOS with Homebrew
brew install postgresql
brew services start postgresql
createdb lifeos
# Ubuntu/Debian
sudo apt-get install postgresql
sudo service postgresql start
sudo -u postgres createdb lifeosHosted Options:
lifeos/
โโโ app/ # Next.js App Router
โ โโโ api/ # API routes (journals, habits, tasks, projects)
โ โโโ dashboard/ # Dashboard page
โ โโโ habits/ # Habit management pages
โ โโโ journal/ # Journal pages
โ โโโ projects/ # Project management pages
โ โโโ tasks/ # Task management pages
โ โโโ layout.tsx # Root layout with navigation
โโโ components/ # Reusable React components
โ โโโ habits/ # Habit-specific components
โ โโโ journal/ # Journal-specific components
โ โโโ layout/ # Navigation and layout components
โ โโโ tasks/ # Task-specific components
โ โโโ ui/ # shadcn/ui components
โ โโโ widgets/ # Standalone widgets (Pomodoro timer)
โโโ hooks/ # Custom React hooks
โโโ lib/ # Utility functions and configurations
โโโ prisma/ # Database schema and migrations
โ โโโ migrations/ # Database migration files
โ โโโ schema.prisma # Database schema definition
โ โโโ seed.ts # Sample data for development
โโโ public/ # Static assetsnpm run dev # Start development server with Turbopack
npm run build # Build for production
npm run start # Start production server
npm run lint # Run ESLint
npm run prisma:studio # Open Prisma Studio (database GUI)
npm run prisma:generate # Generate Prisma client
npm run prisma:migrate # Run database migrations
npm run prisma:seed # Populate database with sample data-
Push your code to GitHub
-
Deploy with one click:
-
Set environment variables in Vercel dashboard:
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEYCLERK_SECRET_KEYDATABASE_URL
-
Run database migrations:
npx prisma migrate deploy
LifeOS can be deployed on any platform that supports Node.js:
- Netlify
- Railway
- DigitalOcean App Platform
- AWS Amplify
- Heroku
We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes with proper TypeScript types
- Add tests if applicable
- Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Use TypeScript for all new code
- Follow the existing code style (Prettier enforced)
- Add proper error handling
- Test your changes thoroughly
- Update documentation as needed
This project is licensed under the MIT License - see the LICENSE file for details.
- Clerk - Authentication and user management
- shadcn/ui - Beautiful, accessible UI components
- Prisma - Type-safe database toolkit
- Vercel - Deployment and hosting platform
- Lucide - Beautiful icon library
- Mobile App: React Native companion app
- Team Collaboration: Shared projects and accountability partners
- AI Insights: Intelligent pattern recognition and suggestions
- Export/Import: Backup and migrate your data
- Integrations: Connect with calendars, fitness trackers, and other tools
- Advanced Analytics: Deeper insights into your productivity patterns
- Customizable Dashboards: Personalize your overview experience
- Voice Journaling: Audio entries with transcription
- Habit Recommendations: AI-suggested habits based on your patterns
- Time Tracking: Built-in time tracking for projects and tasks
- Goal Setting: Long-term goal tracking with habit connections
- Social Features: Share achievements and motivate others
Built with โค๏ธ to help you build better habits and live more intentionally.
Have questions or suggestions? Open an issue or start a discussion!