Oddbean new post about | logout
 Since people invariably will want to use many different nostr clients, any ideas that a single client can use (caching events locally, doing any kind of negentropy with the relay, etc, etc) will not be sufficient.  Any client-specific solutions will not be enough.  We need a NIP based solution.

I've been saying for as long as I can remember that we need what I call a "client proxy".  People have pushed back by imagining I'm talking about some central service people sign up for which would become another point of censorship - NO!  I'm talking about something that you run on your local computer, or your local network, or a data center where YOU control it ... and all your various nostr clients funnel everything through it so as to avoid events being downloaded over and over again.

The protocol from client to client proxy might have to be outside of nostr proper. It just has to add which relay the client would have asked directly.

For example, the client can say "Get this filter from these relays" and the proxy can (being smart) say "Hah, I already have that from relay A, here you go" while it asks relays B and C and caches those results.