โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ โ
โ โโโ โโโโโโโโโโโโโโโโโโโ โโโโโโโ โโโโโโโโ โ
โ โโโ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โโโ โโโโโโโโโ โโโโโโ โโโ โโโโโโโโโโโ โ
โ โโโ โโโโโโโโโ โโโโโโ โโโ โโโโโโโโโโโ โ
โ โโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โโโโโโโโโโโโโโ โโโโโโโโ โโโโโโโ โโโโโโโโ โ
โ โ
โ Your Personal Operating System โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Features โข Quick Start โข Demo โข Architecture โข API โข Documentation โข Contributing
LifeOS is an AI-powered personal operating system that transforms your biometric data into actionable insights. It passively collects data from your Oura ring, calendar, and voice notesโthen uses AI to surface patterns you'd never find yourself.
"Your deep sleep drops 40% after days with more than 4 hours of meetings."
Most self-tracking tools demand more than they give. LifeOS inverts this equation:
| Traditional Apps | LifeOS |
|---|---|
| Manual logging required | Passive data collection |
| Dashboard overwhelm | AI-curated daily brief |
| You find the patterns | Patterns find you |
| Another todo app | A thinking partner |
|
Wake up to an AI-generated summary of your sleep, energy prediction, and one actionable suggestion for the day. Statistical analysis + LLM intelligence discovers correlations in your data that you'd never notice manually. Record voice notes on the go. Whisper transcribes, AI categorizes as task/note/energy log automatically. |
A joyful, warm dark theme that's easy on the eyes and delightful to use every morning. Get briefs via Telegram or Discord at 7 AM. No app required. SQLite database means your data stays on your machine. No cloud dependency. |
| Feature | Description |
|---|---|
| ๐ค Oura Integration | Auto-sync sleep, readiness, and activity scores |
| ๐ Google Calendar | Meeting patterns affect energy prediction |
| ๐๏ธ Voice Notes | Whisper-powered transcription + auto-categorization |
| โก Energy Tracking | Log energy levels, discover your peak hours |
| ๐ Trend Analysis | 7-day, 30-day, 90-day trend visualization |
| ๐ค Personalization | AI learns your preferences over time |
| ๐พ Automated Backups | Daily backups with one-click restore |
| ๐ Smart Notifications | Quiet hours respected, no spam |
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ๐ LifeOS Good morning! โ๏ธ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โ
โ โญโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฎ โ
โ โ ๐ Your Morning Brief โ โ
โ โ โ โ
โ โ Last night you got 7h 12m of sleep with 1h 45m deep โ โ
โ โ sleepโthat's 15% above your average. Your readiness โ โ
โ โ score of 85 suggests today's a great day for focused โ โ
โ โ work. With 3 meetings totaling 2 hours, you'll have โ โ
โ โ solid blocks for deep work. Consider tackling your โ โ
โ โ most challenging task before 11 AM when you typically โ โ
โ โ peak. โ โ
โ โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ โ
โ โ
โ โโโโโโโโโโโ โโโโโโโโโโโ โโโโโโโโโโโ โ
โ โ ๐ค 85 โ โ โก 78 โ โ ๐ 62 โ โ
โ โ Sleep โ โ Ready โ โActivity โ โ
โ โโโโโโโโโโโ โโโโโโโโโโโ โโโโโโโโโโโ โ
โ โ
โ ๐ Energy Trend (7 days) โ
โ โโโโโโโ
โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
[Add your own screenshot: docs/images/dashboard.png]
Get running in 3 commands:
git clone https://github.com/yourusername/lifeOS.git && cd lifeOS
./setup.sh # Creates venv, installs deps, inits DB
nano .env # Add your OURA_TOKEN and OPENAI_API_KEYThen:
source .venv/bin/activate && python -m uvicorn src.api:app --port 8080Open http://localhost:8080 ๐
cp .env.example .env # Configure your tokens
docker compose up -d # That's it!โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ LifeOS Architecture โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ Oura Ring โ โ Calendar โ โ Voice Notes โ
โ (Sleep) โ โ (Meetings) โ โ (Whisper) โ
โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ โโโโโโโโฌโโโโโโโโ
โ โ โ
โโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ FastAPI Backend โ
โ โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ Routers โ โ Services โ โ Integrations โ โ
โ โ /api/... โ โ Insights โ โ โข Oura API โ โ
โ โ โ โ Patterns โ โ โข Google Calendar โ โ
โ โ โ โ Capture โ โ โข Whisper API โ โ
โ โ โ โ Personal. โ โ โข Telegram/Discord โ โ
โ โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโ
โ โ โ
โผ โผ โผ
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
โ SQLite โ โ LiteLLM โ โ Frontend โ
โ (Local DB) โ โ (AI) โ โ (Vanilla) โ
โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโ
| Layer | Technology | Why |
|---|---|---|
| Backend | Python + FastAPI | Fast, modern, async-ready |
| Database | SQLite | Local-first, zero config |
| AI | LiteLLM | Model-agnostic (OpenAI, Anthropic, local) |
| Frontend | Vanilla HTML/CSS/JS | No build step, instant reload |
| Transcription | OpenAI Whisper | Best-in-class speech-to-text |
LifeOS exposes a comprehensive REST API:
| Endpoint | Method | Description |
|---|---|---|
/api/insights/brief |
GET | Get today's morning brief |
/api/insights/patterns |
GET | Get detected patterns |
/api/predictions/energy |
GET | Get energy prediction |
/api/log |
POST | Quick log energy/mood |
/api/capture |
POST | AI-categorized capture |
/api/voice/upload |
POST | Upload voice note |
| Endpoint | Method | Description |
|---|---|---|
/api/oura/sync |
POST | Sync Oura data |
/api/calendar/sync |
POST | Sync Google Calendar |
/api/brief/deliver |
POST | Send brief to Telegram/Discord |
- Interactive Swagger UI: http://localhost:8080/docs
- ReDoc: http://localhost:8080/redoc
- API Reference: docs/API.md - Complete endpoint documentation
๐ Example: Get Morning Brief
curl http://localhost:8080/api/insights/brief?generate=trueResponse:
{
"id": 42,
"type": "daily_brief",
"date": "2026-02-03",
"content": "Last night you got 7h 12m of sleep with 1h 45m deep sleep...",
"confidence": 0.85,
"created_at": "2026-02-03T07:00:00"
}๐ค Example: Upload Voice Note
curl -X POST http://localhost:8080/api/voice/upload \
-F "file=@note.mp3"Response:
{
"id": 1,
"filename": "note.mp3",
"transcription": "Remember to call mom about Sunday dinner",
"transcription_status": "completed",
"categorized_type": "task",
"categorized_id": 15,
"success": true,
"message": "Voice note uploaded. Transcribed: 47 chars. Categorized as: task"
}Create a .env file:
# Required
OURA_TOKEN=your_oura_personal_access_token
OPENAI_API_KEY=your_openai_api_key
# Optional - AI Model
LITELLM_MODEL=gpt-4o-mini # or claude-3-haiku, etc.
# Optional - Notifications
TELEGRAM_BOT_TOKEN=123456:ABC...
TELEGRAM_CHAT_ID=123456789
DISCORD_WEBHOOK_URL=https://discord.com/api/webhooks/...
# Optional - Google Calendar
GOOGLE_CLIENT_ID=xxx.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=xxx| Service | How to Get |
|---|---|
| Oura | cloud.ouraring.com/personal-access-tokens |
| OpenAI | platform.openai.com/api-keys |
| Telegram | Message @BotFather on Telegram |
| Google Calendar | console.cloud.google.com |
| Document | Description |
|---|---|
| docs/API.md | Complete REST API reference with examples |
| docs/ARCHITECTURE.md | System design, data flow, and extension guide |
| docs/PRD.md | Product requirements and AI philosophy |
| QUICKSTART.md | 3-step setup guide |
| CONTRIBUTING.md | Development guidelines |
| ROADMAP.md | Feature roadmap |
The codebase is fully typed with MyPy-compliant annotations:
# Run type checking
pip install mypy
mypy src/| Dashboard | Morning Brief | Trends |
|---|---|---|
| Add screenshot | Add screenshot | Add screenshot |
| Settings | Voice Notes | Mobile (Telegram) |
|---|---|---|
| Add screenshot | Add screenshot | Add screenshot |
Contributions are welcome! Here's how to get started:
# Fork and clone
git clone https://github.com/yourusername/lifeOS.git
cd lifeOS
# Create branch
git checkout -b feature/amazing-feature
# Setup environment
./setup.sh
source .venv/bin/activate
# Run in development mode
python -m uvicorn src.api:app --reload --port 8080lifeOS/
โโโ src/
โ โโโ api.py # FastAPI application
โ โโโ models.py # SQLAlchemy models
โ โโโ ai.py # LiteLLM integration
โ โโโ insights_service.py # Brief & pattern generation
โ โโโ routers/ # API endpoints
โ โโโ integrations/ # Oura, Calendar, Whisper
โ โโโ jobs/ # Cron job scripts
โโโ ui/
โ โโโ index.html # Dashboard
โ โโโ css/ # Styles (modular)
โ โโโ js/ # Scripts
โโโ docs/ # Documentation
โโโ tests/ # Test suite
โโโ docker-compose.yml # Docker deployment
- Commit early, commit often - Small, focused commits
- Test your changes - Run
pytestbefore pushing - Follow the style - Black formatting, type hints
- Document APIs - Update docstrings and README
MIT License - do whatever you want, just don't blame us.
MIT License
Copyright (c) 2026 LifeOS Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.