← SELECTED WORKPROJECT / 02 
Life Board
Multi-user dashboard for money, daily planning and side projects. One place to see what is left to spend, what is planned for today and the next step on each project.
- ROLE
- Full stack
- TEAM
- Solo
- YEAR
- 2026
- STATUS
- Live
ReactTypeScriptHonoCloudflare D1DrizzleSupabase Auth

01 / PROBLEM
The problem
Life Board answers three questions at a glance: how much can I still spend, what am I doing today, and what is the next step on my projects. It keeps money, a daily planner and a side-project board in one place.
02 / CONTRIBUTION
What I built
- Money: expenses, monthly limits per category, income, savings goals and debts, with charts for each month. Recurring bills log themselves on their due day.
- Planner and projects: a top three for the day, habits with streaks, and a project board that allows at most two active projects and shows the next step for each.
- Accounts: invite-only login. Each person sees only their own data, and an admin chooses which sections each person gets. The API enforces this, not just the menu.
- Voice assistant: a token-protected API lets an assistant read the board, log expenses and tick habits.
- Guest mode: the same API runs in the browser on a local SQLite database, so anyone can try the Money page without an account and nothing reaches the server.
03 / ARCHITECTURE
Architecture
A React app talks to a Hono API running on Cloudflare. All app data lives in Cloudflare D1. Validation schemas and business rules sit in one shared package, so the app and the API apply the same rules.
- FRONTEND
- React, TypeScript, Vite, Tailwind CSS, TanStack Query, Recharts
- API
- Hono on Cloudflare Pages Functions
- DATA
- Cloudflare D1 (SQLite) with Drizzle ORM
- LOGIN
- Supabase Auth, used for login only
- SHARED
- Zod schemas and business rules used by both the app and the API
04 / SCREENS
Screens


Monthly charts on desktop, and the Money page on a phone. All screenshots show guest demo data.