Nostr clients need to get serious about efficient bandwidth usage, specially on mobile. Caching as much as possible, only requesting new data, using the outbox model to minimize open WebSocket connections... Ideally built into SDKs or libraries like nostrdb so the average dev doesn't need to worry about it and efforts are not duplicated. This is no easy task and it takes a lot of careful engineering work but it's fundamental if we want the world to be able to use the protocol. It's easy to churn out new features or implement NIPs but building solid foundations is way more important.
Yes, but how about having request/response API in relays? Streaming API are naturally data consuming.
Please Login to reply.
I'd argue that most apps don't need streaming at all or only need to subscribe to a few REQs. No need to keep a sub open after EOSE in most cases.
Having EOSE is just implementing req/res in streams, very hacky design. We should just have req/res and streams without eose