I keep building small personal web apps—journals, bookmark managers, dashboards, habit trackers, and note tools—and I don't want to provision a hosted database or cloud platform just to store a handful of JSON objects. I usually reach for localStorage or IndexedDB, but that data feels temporary: clearing browser storage or changing devices can make everything disappear. For these kinds of projects, what storage approach do you use? Would a local-first library that automatically backed up and restored data on another device be useful, or are local browser storage, a SQLite file, or a simple export already good enough?
4 Answers
Don’t overlook browser durability itself. You can request persistent storage with navigator.storage.persist(), although the browser may refuse, and behavior differs between browsers. Safari can be especially aggressive about clearing script storage. An explicit export/import file is still one of the safest and simplest solutions, while background sync can be added later.
For a server-side SQLite app, Litestream can continuously copy the database’s write-ahead log to object storage, giving you automatic backups without custom scripts. It’s great for restoring a lost file, but it doesn’t provide live multi-device synchronization. For browser-only apps, a local-first sync library or user-owned export is probably a better fit.
For anything that needs to live on a server, I’d use SQLite on a persistent disk and arrange occasional backups. It’s still very low-maintenance, and a single database file is easy to move or restore.
That makes sense for hosted apps. For purely client-side tools deployed as static sites, though, even running a small server and persistent volume feels like too much. I’m wondering whether a dead-simple durable-storage layer would be useful in that space, or whether SQLite plus a volume is already simple enough.
My usual rule is localStorage for disposable data, SQLite when persistence really matters, and PostgreSQL once the app becomes substantial. I probably wouldn’t use another hosted service just for a tiny personal project.

That distinction is helpful. I’m mainly interested in browser-only apps, so I’d need something that can make IndexedDB durable and portable rather than just backing up a server-side SQLite file.