I built DailyNote, a minimalist daily notes app: one note per day, a year-at-a-glance calendar, and local-first storage.
The interesting bit is the encryption + sync model:
- Notes are always encrypted locally before syncing to Supabase.
- A dedicated data key (DEK) encrypts notes; your password only wraps that DEK (KEK).
- So when you change your password, it just re-wraps the DEK — no re-encryption of note data.
I built the whole project in one day using Claude + Codex with a spec‑driven approach (tight PRD → implementation). It’s React/TypeScript, IndexedDB for local persistence, and optional cloud sync.Demo: https://dailynote.xyz/
Repo: https://github.com/katspaugh/dailynote
Would love feedback on the crypto model, UX, or anything else.