I’ve been building an experimental nostr relay with the goal of improving bandwidth efficiency and performance of nostr clients.
the idea is simple: instead of connecting the phone to a dozen relays and deduplicating events locally, push that logic into a “proxy relay” in the cloud.
- duplicate events are never sent to the client, improving both bandwidth usage and performance
- the proxy maintains a local database of events to further speed up queries
- your client IP address is only visible to your proxy, not the upstream relays
- you can define separate upstream read and write relays
- nip-42 + allowlist auth to optionally restrict access
if you look at my set of relays you’ll see I’m only connected to one - that’s my private relay proxy. I’ve been using this setup with damus for the better part of a week and so far so good.
the code is free and open source at https://github.com/bndw/nostr-relay-proxy