lifeos-web is the first-party React Web UI for LifeOS. It is a Vite/React workspace for browser workflows over the LifeOS Web API provided by lifeos-cli.
The frontend is intentionally local-first: it talks to the same configured database as the terminal-native CLI through the LifeOS Web API and the generated OpenAPI transport contract. The Web API implementation stays in lifeos-cli; this repository ships only the browser UI and its build, validation, and dependency tooling. The OpenAPI contract is pinned to a specific lifeos-cli release and verified against a committed SHA-256 digest (scripts/pinned-schema.sha256) whenever the document is fetched; see CONTRIBUTING.md for the refresh flow.
Default navigation keeps LifeOS-backed surfaces visible:
- Visions
- Habits
- Planning
- Timelog
- Finance
- Health
- Insights / Stats
- Schedule / Calendar
- Notes
- People
- Settings / Config
Unsupported reference-product modules such as food diary, cloud auth, invitations, agent sessions, cardbox, notifications, export APIs, and sage maxims are intentionally absent until LifeOS exposes matching local capabilities.
- Node.js 22.12+ or 24.0+ (LTS)
- npm 11.17.0 (the version declared by the
packageManagerfield)
Run the LifeOS Web API first (from a lifeos-cli checkout):
uv run --extra web --extra postgres lifeos web serve --host 127.0.0.1 --port 8765Then run the Vite frontend:
npm ci
npm run devVite proxies /api to http://127.0.0.1:8765.
The dev server listens on loopback only by default. Set VITE_DEV_HOST=0.0.0.0 only when remote debugging is required, because the dev proxy reaches the unauthenticated local Web API.
npm ci
npm run buildThe built dist/ directory can be served by the LifeOS Web API process:
lifeos web serve --static-dir <path-to>/lifeos-web/distFor repository changes, run the primary validation entrypoint:
bash ./scripts/validate.shThe baseline installs locked dependencies, rejects high- and critical-severity npm audit findings, verifies generated API types, validates translation catalogs, builds the app, lints, and runs the test suite.
- Contribution workflow: CONTRIBUTING.md
- Security disclosure: SECURITY.md
- Community expectations: CODE_OF_CONDUCT.md
This project is licensed under the Apache License 2.0. See LICENSE.