edrisranjbar/lifeos: Self-hosted life OS: habits, objectives, Kanban, finance and focus, with an MCP server for AI. · GitHub


Most of us run our lives throughout a to-do app, a behavior tracker, a budgeting spreadsheet, a Pomodoro timer and a notes app — and none of them learn about one another. Edi Life OS places all of it in a single calm, personal dashboard and connects the small stuff you do right now to the path you need your life to take.

  • Everything in a single place. Ten workspaces share one design, one sign-in and one database.
  • Connected, not simply collected. Habits drive objective progress, Kanban playing cards present up within the calendar, and the Overview turns all of it into one each day rating.
  • Yours. Runs on any PHP + MySQL host, even low-cost shared internet hosting. No subscription, no monitoring, no vendor lock-in.
  • AI-ready. A built-in MCP server lets Claude and different assistants learn your dashboard, plan objectives, log habits and observe bills for you.

Growth — Six life dimensions, every linked to long-term objectives, SMART objectives, habits and duties. Guided weekly, month-to-month and quarterly opinions.

Focus timer over an illustrated landscape with a soundtrack panel

Focus — Pomodoro periods with breaks, a built-in focus soundtrack and a panorama that follows the time of day.

Habit checklist with a seven-day completion chart

Habittify — Small each day habits, streaks and a seven-day image of your consistency.

Kanban board with backlog, in progress, review and done columns

Kanban — Boards with labels, priorities, due dates, checklists, feedback and attachments.

All ten workspaces

Workspace What you are able to do
Overview A stay productiveness rating, focus and behavior tendencies, objectives, funds and a seven-day climate forecast.
Growth Connect six life dimensions to long-term objectives, SMART objectives, habits and duties. Run weekly, month-to-month or quarterly opinions. Guide
Focus Timed periods with brief and lengthy breaks, session historical past and a spotlight soundtrack.
Finance Expenses, revenue and budgets in Toman. Debts you owe and credit owed to you, one-time or recurring, recorded straight into the ledger. Guide
Habittify Daily habits with completion, streaks and month-to-month progress.
Kanban Draggable playing cards and lists with priorities, labels, dates, checklists, feedback and file attachments.
Calendar Due playing cards and monetary dues throughout all boards in Month or Schedule view.
Goals SMART objectives with measures, deadlines, priorities, checklists — or progress pushed by a behavior.
Notepad Markdown notes with preview and export.
Notes Sticky notes with colours, fonts and connections.

Dates observe Asia/Tehran. The climate card reveals Qeshm Island through Open-Meteo; its tide determine is a modeled estimate, not for navigation.

Talk to your Life OS with AI

Edi Life OS ships with an non-compulsory MCP server that exposes 26 instruments throughout your dashboard, objectives, duties, habits, funds and notes. Connect it to Claude Desktop, Claude Code or any MCP shopper and ask in plain language:

“Show me my LifeOS dashboard.”

“Create a SMART objective referred to as Build a house studio, due in three months, and add Buy acoustic panels as a job.”

“Mark Reading full for right now.”

“Log a 450,000 Toman meals expense and present my steadiness.”

The MCP server talks to your app solely by way of its token-protected HTTP API. It by no means touches your database or credentials. Setup takes a minute — see MCP server under.

With Docker (really useful)

git clone https://github.com/edrisranjbar/lifeos.git && cd lifeos
cp .env.instance .env    # set your sign-in and passwords
docker compose up -d

Open localhost:8080 and sign up. MySQL, the app and your attachments every stay in their very own quantity, so docker compose up -d --build after a git pull upgrades with out dropping information.

Download lifeos-.zip from the latest release and extract it into your internet hosting residence listing, so public_html/ turns into your net root and the backend sits safely above it. Copy config.instance.php to config.php, fill in your MySQL particulars, and open your web site. See the deployment guide for particulars.

You want PHP 8.1+ (with pdo_mysql and mbstring) and MySQL 8+ (or MariaDB 10.4+).

git clone https://github.com/edrisranjbar/lifeos.git
cd lifeos
cp config.instance.php config.php   # PowerShell: Copy-Item config.instance.php config.php

Edit config.php along with your database connection and the username and password you wish to sign up with, then begin the server:

php -S localhost:8000 -t public_html server.php

Open localhost:8000 and sign up. The database and tables are created on first use. You can change your sign-in later in Settings.

Important

config.php and .env maintain actual credentials and are gitignored. Never commit them.

Component Requirement
PHP 8.1+ with pdo_mysql and mbstring
Database MySQL 8+; additionally examined with MariaDB 10.4
Web server PHP’s built-in server regionally; Apache with rewrites for internet hosting
Weather PHP curl and outbound HTTPS
MCP server Optional: Node.js 22.9+
API exams Optional: pdo_sqlite

A personal /api/v1 API covers the dashboard, objectives, duties, habits, funds and sticky notes. It makes use of its personal bearer token, separate out of your browser sign-in.

php -r "echo bin2hex(random_bytes(32));"

Set the consequence as api_token in config.php (or the LIFEOS_API_TOKEN atmosphere variable), then:

curl -H "Authorization: Bearer $LIFEOS_API_TOKEN" https://your-host/api/v1/dashboard

See the API reference for endpoints, payloads and errors.

cd mcp
npm ci
cp .env.instance .env   # set LIFEOS_BASE_URL and LIFEOS_API_TOKEN
npm begin

The server runs over stdio; there isn’t a hosted MCP endpoint. The MCP guide lists each instrument and reveals shopper configuration for Claude and Codex.

  • Everything lives in your MySQL database. Habits use devoted tables; different workspaces retailer JSON paperwork in app_state.
  • Saves use revision checks, so a stale tab cannot silently overwrite newer modifications. API writes use transactions and row locks.
  • Data from older browser-only variations is imported as soon as; conflicting copies are archived as legacy_backup_* information.
  • Back up the database, attachment information and your configuration collectively.

Moving from the outdated Habittify SQLite database? See migrating Habittify.

Edi Life OS is constructed for a single proprietor.

  • The API token grants learn and write entry to each supported area. Token scopes and app-level price limiting will not be carried out, so set request limits on the internet hosting layer.
  • Use HTTPS anyplace apart from localhost, and maintain tokens out of URLs, frontend code, screenshots and logs.
  • Secret notes are hidden from API reads by default. The secret flag controls visibility; it’s not separate encryption.
public_html/          Browser workspaces, shared property and Apache entry factors
lib/                  API domains, response helpers and state transactions
mcp/                  Optional Node.js stdio MCP server
exams/                Timer, API, MySQL and integration checks
docs/                 Guides, plus README screenshots in docs/media
config.instance.php    Configuration template (no actual credentials)
server.php            Development router and utility routing
api.php               HTTP API entry level

Built with PHP, MySQL and vanilla JavaScript — no frontend construct step, no framework.

Dockerfile, docker-compose.yml and docker/config.php run the app with configuration from atmosphere variables.

MIT © 2026 Edris Ranjbar. Use it, fork it and construct on it.

Ideas, bug reviews and pull requests are welcome. Open an issue to start out a dialog, and see the development guide to run the checks regionally.

If Edi Life OS helps you run your days, take into account giving it a ⭐ — it helps others discover it.



Source link