Welcome to the Life-Dashboard wiki

The feature-by-feature encyclopedia of Life-Dashboard, generated from commit e662257. 25 articles.

About Life Dashboard

Life Dashboard is a self-hosted wellness application that aggregates health metrics from Garmin, tracks nutrition intake, and surfaces AI-generated insights through a Monet-inspired interface designed to feel like a living pond with soft layers and pixel textures. It provides a unified view of daily health data, upcoming calendar events, and todo items through a homepage dashboard, and exposes specialized pages for nutrition tracking, news reading, journaling, and task management. The application deploys as a serverless stack on AWS Lambda, API Gateway, and Fargate with a React frontend, FastAPI backend, and PostgreSQL database, supporting both cloud and local development modes. Users can log food intake, view metrics trends, chat with an AI assistant, sync Google Calendar events, and ingest data from iMessage and Claude Code conversations.

(Full article...)

Claude code integration is the subsystem of Life-Dashboard that reads Claude Code conversation logs, extracts session content, resolves projects, and creates project activities and journal entries from code work. It discovers sessions from history files and directory structures, filters sensitive content before LLM processing, and tracks sync progress per session to avoid reprocessing.

(Full article...)

Did you know...

  • ... that the infrastructure includes local development support via LocalStack (a Docker-based AWS emulator) and a docker-compose.localstack.yml file that spins up LocalStack plus a PostgreSQL database alongside a Caddy reverse proxy that mirrors CloudFront's routing behavior? (Infrastructure)
  • ... that the feature uses lilypad cards, pixel-art sprite-based containers, to present metric values alongside annotated insights, supplemented by charts rendered in the Recharts library? (Insights)
  • ... that the summary uses a source hash to detect when entries, todos, or events change and recompiles only when needed? (Journal)
  • ... that ThemeProvider wraps the entire app and manages theme state (light/dark/system mode, intensity, reduced motion, time-of-day scene moment, and density settings) via ThemeModeContext. It reads and persists settings to localStorage? (Layout and navigation)
  • ... that the assistant supports three execution modes: auto mode executes tools and returns results; preview mode shows proposed actions for user confirmation; and commit mode creates calendar events and project notes from approved actions? (Monet assistant)

Recently updated

Feature map

flowchart LR
  n0["AI digest"]
  n1["API server"]
  n2["Background jobs"]
  n3["Body page"]
  n4["Calendar integration"]
  n5["Claude code integration"]
  n6["Configuration"]
  n7["Dashboard and today page"]
  n8["Database migrations"]
  n9["Documentation"]
  n10["Garmin integration"]
  n11["iMessage integration"]
  n12["Infrastructure"]
  n13["Insights"]
  n14["Journal"]
  n15["Layout and navigation"]
  n16["Monet assistant"]
  n17["News feed"]
  n18["Nutrition tracking"]
  n19["Pixel assets"]
  n20["Read page"]
  n21["Screenshots and media"]
  n22["Todo management"]
  n23["Visual design system"]
  n24["Workspace management"]
  n0 --- n1
  n0 --- n10
  n0 --- n11
  n0 --- n2
  n0 --- n22
  n0 --- n6
  n1 --- n10
  n1 --- n11
  n1 --- n14
  n1 --- n16
  n1 --- n17
  n1 --- n18
  n1 --- n2
  n1 --- n22
  n1 --- n24
  n1 --- n4
  n1 --- n5
  n1 --- n6
  n10 --- n18
  n10 --- n22
  n10 --- n24
  n11 --- n14
  n11 --- n16
  n11 --- n17
  n11 --- n18
  n11 --- n22
  n11 --- n24
  n13 --- n15
  n13 --- n23
  n14 --- n17
  n14 --- n18
  n14 --- n22
  n15 --- n17
  n15 --- n20
  n15 --- n23
  n16 --- n18
  n16 --- n22
  n16 --- n24
  n17 --- n20
  n18 --- n22
  n2 --- n10
  n2 --- n11
  n2 --- n14
  n2 --- n18
  n2 --- n22
  n2 --- n24
  n2 --- n6
  n22 --- n24
  n3 --- n13
  n3 --- n15
  n3 --- n20
  n3 --- n4
  n3 --- n7
  n4 --- n10
  n4 --- n11
  n4 --- n14
  n4 --- n15
  n4 --- n16
  n4 --- n20
  n4 --- n22
  n4 --- n24
  n4 --- n6
  n4 --- n7
  n5 --- n11
  n5 --- n14
  n5 --- n18
  n5 --- n22
  n5 --- n6
  n6 --- n10
  n6 --- n11
  n6 --- n14
  n6 --- n16
  n6 --- n18
  n6 --- n22
  n6 --- n24
  n7 --- n13
  n7 --- n14
  n7 --- n15
  n7 --- n17
  n7 --- n20
  click n0 "/wiki/life-dashboard/wiki/ai-digest/"
  click n1 "/wiki/life-dashboard/wiki/api-server/"
  click n2 "/wiki/life-dashboard/wiki/background-jobs/"
  click n3 "/wiki/life-dashboard/wiki/body-page/"
  click n4 "/wiki/life-dashboard/wiki/calendar-integration/"
  click n5 "/wiki/life-dashboard/wiki/claude-code-integration/"
  click n6 "/wiki/life-dashboard/wiki/configuration/"
  click n7 "/wiki/life-dashboard/wiki/dashboard-today/"
  click n8 "/wiki/life-dashboard/wiki/database-migrations/"
  click n9 "/wiki/life-dashboard/wiki/documentation/"
  click n10 "/wiki/life-dashboard/wiki/garmin-integration/"
  click n11 "/wiki/life-dashboard/wiki/imessage-integration/"
  click n12 "/wiki/life-dashboard/wiki/infrastructure/"
  click n13 "/wiki/life-dashboard/wiki/insights/"
  click n14 "/wiki/life-dashboard/wiki/journal/"
  click n15 "/wiki/life-dashboard/wiki/layout-navigation/"
  click n16 "/wiki/life-dashboard/wiki/monet-assistant/"
  click n17 "/wiki/life-dashboard/wiki/news-feed/"
  click n18 "/wiki/life-dashboard/wiki/nutrition-tracking/"
  click n19 "/wiki/life-dashboard/wiki/pixel-assets/"
  click n20 "/wiki/life-dashboard/wiki/read-page/"
  click n21 "/wiki/life-dashboard/wiki/screenshots/"
  click n22 "/wiki/life-dashboard/wiki/todo-management/"
  click n23 "/wiki/life-dashboard/wiki/visual-design-system/"
  click n24 "/wiki/life-dashboard/wiki/workspace-management/"
Each box is an article; a line joins two articles when code in one calls or imports code in the other.

All articles lists every article as text.