Edi Life OS

De meeste mensen beheren hun leven via een to-do app, een habit tracker, een budgetspreadsheet, een Pomodoro-timer en een notitie-app, maar geen van deze tools communiceert met elkaar. Edi Life OS brengt dit alles samen in één rustig, privé dashboard en verbindt de kleine dagelijkse handelingen met de richting die je met je leven op wilt gaan.

De kernwaarden

  • Alles op één plek: Tien werkruimtes delen één ontwerp, één aanmelding en één database.
  • Verbonden, niet slechts verzameld: Gewoonten stimuleren de voortgang van doelen, Kanban-kaarten verschijnen in de kalender en het overzicht vertaalt dit alles naar één dagelijkse score.
  • Volledig in eigen beheer: Draait op elke PHP + MySQL host, zelfs op goedkope shared hosting. Geen abonnementen, geen tracking en geen vendor lock-in.
  • Klaar voor AI: Een ingebouwde MCP-server stelt Claude en andere assistenten in staat om je dashboard te lezen, doelen te plannen, gewoonten te loggen en uitgaven bij te houden.

---

Een tour door de functies

  • Groei (Growth): Zes levensdimensies, elk gekoppeld aan langetermijndoelen, SMART-doelen, gewoonten en taken. Inclusief begeleide wekelijkse, maandelijkse en kwartaalbeoordelingen.
  • Focus: Pomodoro-sessies met pauzes, een ingebouwde focus-soundtrack en een landschap dat verandert op basis van het tijdstip van de dag.
  • Habittify: Kleine dagelijkse gewoonten, streaks en een wekelijks overzicht van je consistentie.
  • Kanban: Borden met labels, prioriteiten, deadlines, checklists, opmerkingen en bijlagen.

---

Overzicht van de tien werkruimtes

WerkruimteFunctionaliteiten
OverviewEen live productiviteitsscore, trends in focus en gewoonten, doelen, financiën en een weersvoorspelling voor zeven dagen.
GrowthVerbind zes levensdimensies aan langetermijndoelen, SMART-doelen, gewoonten en taken. Voer wekelijkse, maandelijkse of kwartaalbeoordelingen uit.
FocusGetimede sessies met korte en lange pauzes, sessiegeschiedenis en een focus-soundtrack.
FinanceUitgaven, inkomsten en budgetten in Toman. Schulden en vorderingen, eenmalig of terugkerend, direct vastgelegd in het grootboek.
HabittifyDagelijkse gewoonten met voltooiing, streaks en maandelijkse voortgang.
KanbanVersleepbare kaarten en lijsten met prioriteiten, labels, datums, checklists, opmerkingen en bestandsbijlagen.
CalendarOvervallen kaarten en financiële verplichtingen over alle borden in maand- of schemaweergave.
GoalsSMART-doelen met meetpunten, deadlines, prioriteiten en checklists — of voortgang gestuurd door een gewoonte.
NotepadMarkdown-notities met preview en exportfunctie.
NotesPlaknotities met kleuren, lettertypen en verbindingen.

Opmerking: Datums volgen Asia/Tehran. De weerkaart toont Qeshm Island via Open-Meteo; de getijdenfiguur is een gemodelleerde schatting en niet geschikt voor navigatie.

---

Communicatie met AI via MCP

Edi Life OS wordt geleverd met een optionele MCP-server die 26 tools beschikbaar stelt voor je dashboard, doelen, taken, gewoonten, financiën en notities. Je kunt dit verbinden met Claude Desktop, Claude Code of elke andere MCP-client en in gewone taal vragen:

  • "Laat mijn LifeOS dashboard zien."
  • "Maak een SMART-doel aan genaamd 'Thuisstudio bouwen', met een deadline over drie maanden, en voeg 'Akoestische panelen kopen' toe als taak."
  • "Markeer 'Lezen' als voltooid voor vandaag."
  • "Log een uitgave voor eten van 450.000 Toman en laat mijn saldo zien."

De MCP-server communiceert met de applicatie uitsluitend via de token-beveiligde HTTP API. Het raakt nooit direct de database of inloggegevens aan.

---

Snelstart

Met Docker (aanbevolen)

git clone https://github.com/edrisranjbar/lifeos.git && cd lifeos
cp .env.example .env    # stel je inloggegevens en wachtwoorden in
docker compose up -d

Open localhost:8080 en log in. MySQL, de app en je bijlagen staan in hun eigen volumes, waardoor een update via git pull en docker compose up -d --build geen dataverlies veroorzaakt.

Op shared hosting

  1. Download lifeos-<versie>.zip van de laatste release.
  2. Pak het bestand uit in je hosting-home directory, zodat public_html/ je webroot wordt en de backend veilig daarboven staat.
  3. Kopieer config.example.php naar config.php, vul je MySQL-gegevens in en open je site.

Met lokale PHP

Vereisten: PHP 8.1+ (met pdo_mysql en mbstring) en MySQL 8+ (of MariaDB 10.4+).

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

Bewerk config.php met je databaseverbinding en de gewenste gebruikersnaam en wachtwoord, start vervolgens de server:

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

Open localhost:8000 en log in. De database en tabellen worden bij het eerste gebruik automatisch aangemaakt.

Belangrijk: config.php en .env bevatten echte inloggegevens en staan in .gitignore. Commit deze bestanden nooit.

---

Systeemvereisten

ComponentVereiste
PHP8.1+ met pdo_mysql en mbstring
DatabaseMySQL 8+; ook getest met MariaDB 10.4
WebserverIngebouwde PHP-server (lokaal); Apache met rewrites (hosting)
WeerPHP curl en uitgaande HTTPS
MCP serverOptioneel: Node.js 22.9+
API testsOptioneel: pdo_sqlite

---

API en Integraties

HTTP API

Een private /api/v1 API bestrijkt het dashboard, doelen, taken, gewoonten, financiën en plaknotities. Deze maakt gebruik van een eigen bearer token, gescheiden van je browser-inloggegevens.

Genereer een token:

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

Stel het resultaat in als apitoken in config.php (of de LIFEOSAPI_TOKEN omgevingsvariabele).

Voorbeeld aanroep:

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

MCP server

cd mcp
npm ci
cp .env.example .env   # stel LIFEOS_BASE_URL en LIFEOS_API_TOKEN in
npm start

De server draait over stdio; er is geen gehost MCP-eindpunt.

---

Gegevensbeheer en Beveiliging

Gegevensopslag

Alle gegevens worden opgeslagen in je MySQL-database. Gewoonten gebruiken specifieke tabellen; andere werkruimtes slaan JSON-documenten op in app_state.

  • Consistentie: Opslagen maken gebruik van revisiecontroles, zodat een oude tab niet onbedoeld nieuwere wijzigingen overschrijft.
  • Transacties: API-schrijfacties maken gebruik van transacties en row locks.
  • Back-ups: Maak samen backups van de database, de bijlagen en je configuratie.

Beveiliging

Edi Life OS is gebouwd voor één enkele eigenaar.

  • API Token: Verleent lees- en schrijftoegang tot elk ondersteund domein. Er is geen rate limiting op app-niveau; stel dit in op hostingniveau.
  • HTTPS: Gebruik HTTPS overal buiten localhost. Houd tokens uit URL's, frontend-code, screenshots en logs.
  • Geheime notities: Deze zijn standaard verborgen voor API-uitlezingen. De 'secret flag' regelt de zichtbaarheid, dit is geen aparte encryptie.

---

Projectstructuur

  • public_html/: Browser-werkruimtes, gedeelde assets en Apache entry points.
  • lib/: API-domeinen, response helpers en state transacties.
  • mcp/: Optionele Node.js stdio MCP-server.
  • tests/: Timer, API, MySQL en integratiecontroles.
  • docs/: Handleidingen en screenshots in docs/media.
  • config.example.php: Configuratie-sjabloon (zonder echte inloggegevens).
  • server.php: Ontwikkelingsrouter en applicatierouting.
  • api.php: HTTP API entry point.

Het systeem is gebouwd met PHP, MySQL en vanilla JavaScript — zonder frontend build-stap of framework. Dockerfile, docker-compose.yml en docker/config.php maken het mogelijk de app te draaien met configuratie via omgevingsvariabelen.

---

Documentatie en Bijdragen

Beschikbare documentatie

  • API reference: Authenticatie, routes, dataformaten en concurrency.
  • MCP guide: Tools, omgevingsinstellingen en client-setup.
  • Deployment guide: Apache, shared hosting, backups en migratie.
  • Development guide: Lokale controles en disposable integration fixtures.

Licentie

MIT © 2026 Edris Ranjbar. Gebruik het, fork het en bouw erop voort.

Bijdragen

Ideeën, bugrapporten en pull requests zijn welkom. Open een 'issue' om een gesprek te starten en raadpleeg de development guide om controles lokaal uit te voeren.