Skip to content
No. 03Personal product2026
Back to work

LifeDashboard

A life-management app that connects tasks, school assignments, goals, scheduling, and time tracking, so you can see how daily actions line up with your priorities.

Role
Built it
Dates
2026
Stage
Live, sign-in required
Built with
Next.js (App Router), TypeScript, Supabase Postgres with row-level security, Groq, Brave Search API, Vercel

Try it

LifeDashboard · Try with sample data

Fictional goals and tasks fixed at Wed 14 Oct 2026, 3:00 pm. Nothing is saved or sent anywhere.

Tasks & assignments

Do well in Intro Microeconomics

Launch a side project

Train for a 10K

Alignment · this sample week

50% overall alignment

Average of 2 goals with eligible items

  • Do well in Intro Microeconomics

    1 on time ÷ 2 eligible = 50% · 1 overdue

  • Launch a side project

    1 on time ÷ 2 eligible = 50% · 1 overdue

  • Train for a 10K

    Not enough eligible items

An item becomes eligible once it's due or done. Undated and skipped items are left out. Score = on time ÷ (on time + late + overdue), the app's own rule.

Time against goals

5hlogged this week

Log a 25-minute session against
  • Do well in Intro Microeconomics2h 30m of 5h
  • Launch a side project2h of 4h
  • Train for a 10K30m of 3h

Time is separate from alignment: logging a session never completes a task. Accepted blocks count once they've happened.

Suggested schedule

Proposed · not on your calendar

Study: Midterm review sheet

Thu, Oct 15, 7:30 pm–8:30 pm

Choose a time

Calendar · committed

  • Microeconomics lectureThu, Oct 15, 10:00 am–11:20 am
  • Work shiftThu, Oct 15, 5:00 pm–7:00 pm

The problem

School, work, fitness, finances, routines, and goals usually live in separate tools, so it is hard to see whether a week of activity actually served the goals behind it. LifeDashboard brings them under one Alignment score.

My contribution

I built LifeDashboard: a Next.js and TypeScript front end on Supabase Postgres, with row-level security on every table, deployed on Vercel.

Decisions

  • Alignment judges an item only once it is due or done. Undated and skipped items are left out entirely, rather than counted as quiet passes.
  • Logged time is one total, summed at read time across billing entries, assignment sessions, timers, and calendar blocks that have passed, instead of merging separate tables.
  • Schedule proposals are computed fresh on every read and never stored; only a block the user accepts is written.
  • Every table has row-level security, so a user can only read or write their own rows.
  • Calculations are pure TypeScript with no database or React inside, so plain Node scripts can test them.
  • AI-parsed quick logs become an editable draft; nothing saves until the user confirms it.

What it does

  • Alignment: on-time completion, goal by goal and overall, for tasks and goal-linked assignments.
  • Time tracking: one hours total summed across billing entries, assignment work sessions, timers, and calendar blocks that have passed.
  • Scheduling: proposed study and work blocks, saved only when accepted.
  • Syllabus upload: the Groq API extracts courses and deadlines into the schedule.
  • Also: finances, daily routines, two small side-business trackers, and CSV export.

Good to know

  • LifeDashboard also contains a venture progress tracker, fed by markdown notes, that records the startup’s updates, interviews, milestones, and decisions. It is a personal tracker, separate from the praxic product, and its sample figures are example input, not company results.

Other projects