back to work
2026backend · mobile · aiSolo·2026·shipping

lifeOS.

Life-management app with an offline, on-device LLM.

lifeos · on-device llm · offline
offlineLLM▸ runs locallyno cloud

problem

Most life-tracking apps either ship your personal data to a server or fall apart offline. I wanted habits, mood and spending tracking with an assistant whose LLM runs on the device itself — private by construction, and useful with no connection at all.

approach

The assistant's LLM runs on-device, so prompts and personal context never leave the phone. A Python gRPC backend over PostgreSQL (Alembic migrations) exposes auth, tasks, habits, mood and spending purely as a thin sync layer. The Expo / React Native client is offline-first: it batches changes and the server ingests them idempotently, so a re-sent batch never duplicates. JWT access/refresh auth; self-hosted CI/CD via GitHub Actions + PM2.

outcome

Working full-stack app — offline-first sync, dashboards, and an AI chat tab — built solo across backend and mobile.

surfaces
backend + mobile
sync
offline-first · idempotent

stack rationale

  • gRPC backendTyped contracts shared between the Python server and the TS client; one schema, no drift.
  • Idempotent batch syncOffline-first means retries are normal. A stable id per change makes re-sending a batch safe — no duplicates.

full stack

  • Python
  • gRPC
  • PostgreSQL
  • Expo / React Native
  • TypeScript
  • on-device LLM