
case-study
Wunderplanning
A daily planner that keeps tasks, notes and to-dos in one place, private by default.
- Tasks & Notes
- Local-first
- Privacy-first
- Full-stack
- Personal SaaS
- React
- TypeScript
- Tailwind
- IndexedDB
- Neon Postgres
- Vercel


the problem
Why I built it
As a Product Owner running two products in parallel, my own planning was scattered across half a dozen tools: tasks in one app, notes in another, loose to-dos everywhere. Nothing kept them in one place, and nothing started from the question that matters each day: what am I focusing on now?
Heavy project tools were too much overhead for personal planning; plain notes were too loose to hold a real workflow. I wanted one opinionated place where tasks, notes and to-dos live together, and where my data stays mine.
the approach
The product decisions
One board, three building blocks. Instead of separate apps, I put tasks, notes and to-dos on a single board, so capturing a thought never means switching context. The whole board loads and saves as one unit.
Focus over firehose. The day starts with a short commitment, a few tasks you can realistically finish, while everything else stays one click away in an overflow. Smart automations pick the focus, boost what is most urgent and keep the board tidy on their own.
Local-first, and the price it costs. Personal planning is personal, so I took the board out of the database and put it in the browser: tasks, notes, to-dos and attachments now live on your own device and are never sent to a server. Nothing to breach, nothing for me to read, nothing sitting in a backup of mine. The price is real, and I want to name it rather than hide it — there is no sync, so the board belongs to the browser you built it in. I decided that owning the data outright was worth more than opening the same board on a second machine.
Full-stack, solo. I designed and built all of it myself, front to back, which is also how I found out what my own decisions cost. The server now carries only what genuinely needs one: signing in, and the feedback people send me.




what I built
The product
Wunderplanning is a real, account-based planning app: a unified board for tasks, notes and to-dos, file attachments, an onboarding flow, in-app feedback, and export and backup of your own data. Signing in is passwordless — a one-time code by email, good for fifteen minutes and one use. There is no password to set, and none to lose.
Under the hood it's React, TypeScript and Tailwind, with the planner itself held in the browser: localStorage for the board, IndexedDB for attachments and for the backup folder you can point the app at on your own disk. Serverless API routes and a Neon Postgres database handle only the account, the sign-in session and feedback. Everything runs on Vercel.
It began the other way round, with the board in Postgres behind per-account encryption. Moving it onto the device is the largest change the product has been through, and the one I am most sure about. It's my personal SaaS testbed for product ideas and small, sharp tools I use every day.




outcome
What it changed
Shipping a full product solo, from the first user story down to the database schema and the infrastructure, changed how I work as a Product Owner. Making the trade-offs and living with the consequences sharpened how I scope, estimate, prioritise and write tickets in my day job.
It is an ongoing project. I keep shaping it around how I actually plan, which is exactly the point.
Want to see it in action?
Visit wunderplanning.com
