Let Me Let You Own Your Data
October 26, 2026  --  2 minutes
· · ·

Why do I have to choose between my web app respecting people’s privacy and it, like… having basic functionality?

When I was working on Cheapskate, I realized after a few weeks that there was a fundamental issue. The app relies on Supabase for the unsexy parts of its architecture: authentication and a SQL datastore. All of it is bog-standard and all of it I happily handed off to be someone else’s problem. To be clear, I love Supabase – if I had to run all that boilerplate myself, I never would have made Cheapskate.

But… the shape of it is wrong. I don’t want to own this data. This is a person’s financial details! Shouldn’t that live with them, and not with me? Is it even possible to make a web app like this, with anything close to the same convenience and functionality (durable, works across devices, shareable with friends) as Supabase allows?

Well, I really wanted to. I spent a lot of time trying. Here are all the things that don’t work:

Besides, all of these options compromise on the data model anyway, being KV or blob storage when all I really want is an API to run SQL queries. You know, like any normal app?

Argh!

Made with Jekyll   |   Last updated 26 Oct 2026