Ferrynote

A small notes app that works fully offline, syncs when it can and fits in an 18 KB core.

client

—

role

Author

year

2025

stack

TypeScript · React · IndexedDB

A tablet with a blank screen on a white desk

01 / problem

I wanted a notes app that opens instantly on a train with no signal and does not need an account. Most apps I tried that promised offline use were either heavy or lost edits when two devices changed the same note.

02 / approach

Ferrynote stores everything in IndexedDB, renders with React and syncs through a tiny merge layer that keeps both versions of a conflicting paragraph instead of picking one. The service worker caches the shell, so the app opens with no network at all.

03 / outcome

The core bundle is 18 KB gzipped and the app works offline from the first visit. It is open source, has a small and friendly group of users, and is now my reference for how I build PWAs for clients.

Offline

Works with no connection

18 KB

Gzipped core bundle

Phone with a blank screen on a dotted notebook
Pencil resting on an open notebook

© 2026 Teodor Halvik. Built in Rotterdam.

© 2026 Teodor Halvik. Built in Rotterdam.

Create a free website with Framer, the website builder loved by startups, designers and agencies.