Consider Private Clouds & Universal Servers: a low effort open letter
TLDR:
There’s not really much out there in terms of a ‘universal server’ that could meet the needs of self hosted apps, niche vibe coded projects, and general personal cloud type applications. I feel like Nostr might be able to fill this sort of niche - in some cases as it is now, and in others, likely with a new NIP or slightly different use of something already present like Blossom. But I lack the brain cells to make it happen, so I figured I’d yap about it on the internet instead, in the event my ideas might inspire someone else.
The Issue:
In the last few years, my strategy of self hosting content has changed quite a bit. Even as someone who’s job and portion of hobbies consist of tech, self hosting can get kinda annoying sometimes. You’re generally either stuck in one of two options, either: A) you self host a bunch of different specialized services, each taking up both time and server overhead, and increasing the chances that a vulnerability compromises your setup. Or, B), you try to use some sort of suite like Nextcloud. sudo snap install Nextcloud is rather easy, but it’s more of a jack of all trades type tool - meh RSS reader1, meh notes app, decent word processor, poor encryption, etc.
The only exemption to this, that I’ve found, is Syncthing - which I’ve migrated much of my self hosting to. It syncs my files and does nothing else; be that my notes/documents folder, my music, photos, game saves, and more. It doesn’t try to be the best notes app, it just syncs, and that means it works with the best notes apps as long as they’ll work with a directory of markdown files (which, many of the best apps do). UNIX philosophy at it’s finest.
The Proposal
My proposal is pretty simple: Nostr might fit into this pretty well.
Having a somewhat standardized server for syncing data and self hosting has quite a few benefits, namely:
- Overhead & Complexity: No need to waste expensive RAM and CPU cycles hosting a half a dozen services if one can host everything. No need to spend the time setting up and maintaining them either.
- Dumb Relays are efficient: Consumer devices usually have plenty of resources to spare, while a budget VPS or SBC often does not. Offloading processing to a local app makes self hosting & community resources a lot more accessible.
- Trustless by design: An E2E encrypted relay is easier to trust when it’s on a VPS or hosted by a community member, and having one dumb server rather than a number of smart servers limits one’s attack surface. This is especially useful in the age of vibe coding, where vibing a server from scratch is a lot more risky than building a simple app that interfaces with a remote server that’s been reviewed by humans.
The value proposition is pretty straightforward, one server - hosted by you or a community - can handle most of your personal cloud needs. One server that can sync your RSS feeds, your notes app, the game saves on your emulator, your personal media (pictures, music ect.), and the data from the half dozen vibe coded apps you made for your own niche use cases, is also the same server that can host a social media profile, the bookmarks tab on your static site, your private group chat, and your NMail messages.

This isn’t really an XKCD 927 issue, or a ‘lets build a clone of xyz, but with Nostr’ type scenario. There’s few if any similar ‘universal’ servers out there. Syncthing is powerful, but limited to apps that work out of folders, and somewhat bulky (it’d be cumbersome for an emulator to open a hole-punched connection to a remote device, and near impossible to do in a browser). Protocols like Iroh solve some of those issues, but there’s no ‘universal data sync server’ using Iroh or something similar (yet, at least to my knowledge). The old standards like FTP/Samba are dinosaurs rarely used, and suites like Nextcloud offer a number of tools but were never intended to have the universality like I’m proposing.
The Hypothetical Implementation
For a lot of basic apps, syncing a bit of JSON is really all you need to do - there’d be no need to re-invent the wheel - a few megabytes of application specific data is really all you need. I’ve done that already with tools like my vibe coded Story Tool and Feed Tool - niche personal apps unrelated to Nostr, except that they use it on the backend to provide basic, E2E encrypted data sync. Any app that could get away with text only sync - such as a notes app or feed reader – could be developed today2.
For data beyond JSON, and probably basic sync/app data in general, a new NIP might need to be developed. Possibly re-tooling Blossom for private, encrypted data, or something else entirely. If smart devs were to find this idea useful, they’d probably have a number of ideas on how something like that could be implemented.
Finding an unsolved problem is always the shortcut to growing a project, and usually ends up with wildly better success than solving an already solved problem only mildly better than the alternatives with market dominance. I think that this may very well be a largely unsolved problem, and could potentially be a good niche for the community to look into. Though I lack the brain cells to do it myself, I figured it’d be worth rambling about instead.
At least when the reader doesn’t break because development fell behind the main tool, which was what caused me to migrate elsewhere. ↩
Which is actually something I’ve been on and off considering doing, vibing my own RSS reader that syncs via Nostr or Syncthing, that way I can replace my FreshRSS instance without either paying for something like Feedly or forgoing synced feeds altogether. ↩
Write a comment