Clay Tu
Nina Dashboard icon

Personal Life OS · Self-hosted

Nina Dashboard

Life used to be scattered across dozens of apps. Now it fits in one picture: health, training, trading, reading, journaling and travel — twenty-plus boards in one system, each looked after by its own Nina.

Next.js 16React 19TypeScriptSQLiteOpenClawClaude · Kimi · Grok

20+

boards

181

tables

10

Ninas

1

machine at home

Why It Exists

"Put the whole of life into one picture."

Sleep lived in the watch, workouts in one app, meals in another, trades at the broker, and notes, journals and statements somewhere else again. Each one saw its own slice. None could tell me: you slept badly last night — should you still go heavier today?

Nina Dashboard pulls it all into one database, and a family of Ninas reads and writes it every day. I don’t have to open it: a Telegram message in the morning says “train as normal today”, and behind it sleep, HRV and last week’s training have already been read.

What’s Inside

Health & Training

A morning brief that says whether to train today, a recovery score from HRV and sleep, a strength coach that plans the next session, and a monthly diet check-up.

Trading

Pre-market briefings, an end-of-day review card for ES and NQ, a position ledger that treats a trade from open to close as one story, and a journal with a coach.

Reading

One passage of an English classic a day, translated and annotated the night before. Tap a hard sentence and it explains itself; retell it in English when you finish.

English

Every correction in the journal becomes a flashcard. Spaced repetition decides what comes back tomorrow; a monthly check-up shows what is actually improving.

Journal & Memories

Write by talking it through with Nina Echo. Photos become memories, threaded by people and occasions, with “on this day” from past years.

Travel

Expenses, notes, voice and photos sent from the road become a travelogue — one chapter per day, plus background cards for the places visited.

Life Admin

Notes, cards and statements, documents and renewals, Costco price adjustments — the paperwork side of life, with a reminder before anything lapses.

Companion App

NinaWellbeing icon

iOS · Personal use, not on the App Store

NinaWellbeing

The iPhone half of the health boards. It moves Apple Health data into the Dashboard in the background, proves what actually arrived, and writes the Dashboard’s records back into Apple Health.

Apple Health

Watch and iPhone

On-phone queue

Survives offline

Nina Dashboard

The Mac at home

← Meals and logged readings flow back from the Dashboard into Apple Health

Syncs on its own

When the watch syncs, iOS wakes the app and it uploads in the background — over the home network, or through an end-to-end encrypted relay when away. Offline, the data waits in a queue on the phone and goes out later.

A receipt for every day

A heatmap compares, day by day and field by field, what the phone measured with what the Dashboard actually stored. Tap a day to see what doesn’t match, or send it again.

Two-way with Apple Health

Meals and manually logged readings flow back from the Dashboard into Apple Health, so the Health app stays complete. The Dashboard is the source of truth.

Guided body photos

Front, side and back, with last time’s outline overlaid. It checks distance, angle and pose, says out loud what’s off, and takes the shot itself once everything lines up — so every set compares like for like.

SwiftSwiftUIHealthKitBackgroundTasksVisionCryptoKit

The Ninas Behind It

Each Nina is an agent on OpenClaw with her own job, memory and skills. Most of them are a Telegram message away, and all of them read and write the same data through the Dashboard’s API.

Nina

NinaChief of Staff

The one Clay talks to first. Everyday questions, calendar and reminders — and she knows which corner of the Dashboard holds the answer.

Nina Trading

Nina Trading

Trading Partner

Reads ES and NQ through an Al Brooks lens. Pre-market briefings, an end-of-day review card after every session, daily and weekly reviews.

Nina Wellbeing

Nina Wellbeing

Health Coach

A morning brief every day: train or rest, based on HRV, sleep and training load. Logs meals and workouts from a photo or a sentence.

Nina Sage

Nina Sage

Reading Companion

One passage of an English book a day. Preps the lesson overnight — translation, hard sentences, vocabulary — then reads along.

Nina Echo

Nina Echo

The Listener

For the days that need talking through. Listens first, then helps turn the day into a journal entry — saved only when Clay says so.

Nina Tutor

Nina Tutor

English Tutor

Turns past writing mistakes into today’s practice. A few drills on Telegram every afternoon; looks words up and adds them to the deck.

Nina Travel

Nina Travel

Travel Companion

Logs expenses from a receipt photo, answers questions on the road, and turns photos, voice notes and places into a travelogue chapter each night.

Nina Pro

Nina Pro

Deep Analysis

The slow thinker. Strategy, long-form research and the hard questions that deserve more than a quick answer.

Nina IP

Nina IP

Content Creator

Nina’s public face — the iNina account on Rednote and the NINA Diary. Nothing goes out until Clay approves it.

Nina Dashboard

Nina Dashboard

Ask Nina

Lives inside the Dashboard. Answers questions about whatever page is open, tidies up notes, and steps in when another Nina is offline.

How It’s Built

Stored at home

One SQLite database — 181 tables and counting — on a Mac at home. Sensitive files never sit in a public folder, and every API requires a login unless it is explicitly opened.

One source of truth

Pages and agents read the same API. Ask a Nina on Telegram and she quotes the number the page shows instead of recomputing it her own way.

Nina proposes, Clay decides

Logging is automatic; decisions are not. Anything that changes a plan — a training goal, a to-do, an insight worth keeping — waits for a tap.

Fail loudly, never spend quietly

Every model call goes through one gateway. Subscriptions come first; if they are unavailable the task fails visibly instead of slipping onto a metered API.

Next.js 16React 19TypeScriptSQLiteOpenClawClaude · Kimi · GrokTelegramSwiftUI + HealthKitKokoro TTSlaunchd