Coffee Pad
End-to-end encrypted

A quiet place for the things you have to do

Coffee Pad is a to-do app for one person — you. It feels like the notepad you already like, and everything in it is encrypted with a key that never leaves your browser.

Get started

Free, personal, and yours to self-host.

This is the real app, running on made-up data. Tick things off, rewrite a note, add a list — nothing is saved, and nothing leaves this page.

Small on purpose. Serious where it counts.

Nobody reads it but you

Every task is sealed with AES-256 in your browser before it's sent. The database holds ciphertext — even a full dump, or an API that misbehaves, gives up nothing.

A passphrase, not a promise

Your key is derived from a passphrase we never receive and can't reset. You get a one-time recovery key for the day you forget it.

Three panes, no ceremony

Lists, tasks, and a place to write. No boards, no assignees, no workflow states. It's a pad, and it stays a pad.

Hands stay on the keys

⌘K goes anywhere. N starts a task, ⌘↩ finishes it, ⇧L locks the whole thing behind you. Bare letters on purpose — the browser owns ⌘N.

Light and dark, properly

Warm paper by day, low-glare graphite by night — or just follow the system and never think about it.

Yours alone

Sign in with Google, run it on your own Supabase project, and close signups behind you. No teams, no seats, no upsell.

What the server actually stores

Not the title. Not the notes. Not the due date. Not even whether you’ve ticked it off. A row is an id, a timestamp, and a block of ciphertext — which is exactly what you’d see if you queried the database yourself.

Row-level security keeps rows scoped to their owner as well, but that’s the seatbelt. The encryption is the reason a leak isn’t a leak.

select * from tasks limit 1;
id 9f3c1e8a-4b21-47de-9c0f-2a5d7e61b884
user_id c1a7ee20-0f4d-4a19-8b6e-7d3f9c25a107
list_id 4e8b2c11-93af-4d76-a5e2-61bd0f8c4a39
iv bDk2Rk1uWFo4dGhq
ciphertext 9tQfLm2xR7vKcE0aYh3NpUwZs6BdGj4TiXo1
 Vr8CkQzMbA5eHnLyD7fJuP2ItSgW0xR4mNqZ
created_at 2026-08-31 09:14:02+00

Open it, write it down, get on with your day

No onboarding tour. No workspace to name. Sign in, choose a passphrase, and start typing.

Get started