3. Keeps data on my device, not someone else's server
4. Something to take notes right there in the browser
Technical stack: Next.js static export, IndexedDB for storage, Web Speech API for voice dictation. Total infrastructure cost is ~$0/month for static hosting.
The architecture is intentionally simple. Notes live in the browser's IndexedDB. Voice dictation uses the browser's native speech recognition. No external APIs, no database, no waitlists, no sign-ups
Trade-offs I accepted:
- No sync between devices (considering E2EE sync as optional paid feature)
- Data loss if you clear browser storage (export to MD/PDF available)
- PWA only, no native apps
Who actually uses this:
- Quick capture when you don't want to open a full app
- Drafting prompts before pasting into ChatGPT/Claude (has token counter)
- Private journaling without cloud anxiety
- Offline notes on flights/commutes
- People with "account fatigue" who just want to write
Curious what HN thinks about local-first as a default architecture choice. The privacy angle resonates with users, but the no-sync limitation is a dealbreaker for many.
Happy to discuss technical decisions or answer questions.
Using IndexedDB as the only store moves the reliability boundary to the browser. That removes server risk but introduces quota limits, eviction, and “best effort” persistence, especially on mobile where storage gets reclaimed aggressively.
For a notes app, silent data loss is the critical failure mode. How are you handling quota errors and potential eviction before users discover missing notes?
2 comments
[ 2.2 ms ] story [ 17.3 ms ] thread1. Works offline (airplane, subway, spotty wifi)
2. Doesn't require an account
3. Keeps data on my device, not someone else's server
4. Something to take notes right there in the browser
Technical stack: Next.js static export, IndexedDB for storage, Web Speech API for voice dictation. Total infrastructure cost is ~$0/month for static hosting.
The architecture is intentionally simple. Notes live in the browser's IndexedDB. Voice dictation uses the browser's native speech recognition. No external APIs, no database, no waitlists, no sign-ups
Trade-offs I accepted:
- No sync between devices (considering E2EE sync as optional paid feature)
- Data loss if you clear browser storage (export to MD/PDF available)
- PWA only, no native apps
Who actually uses this:
- Quick capture when you don't want to open a full app
- Drafting prompts before pasting into ChatGPT/Claude (has token counter)
- Private journaling without cloud anxiety
- Offline notes on flights/commutes
- People with "account fatigue" who just want to write
Curious what HN thinks about local-first as a default architecture choice. The privacy angle resonates with users, but the no-sync limitation is a dealbreaker for many.
Happy to discuss technical decisions or answer questions.
For a notes app, silent data loss is the critical failure mode. How are you handling quota errors and potential eviction before users discover missing notes?