You can also do this in damus
Discussion
How does this work in your vision of nostr fiatjaf when your client follows a relay hint to vile content? Seems like fixed private relay sets are strictly better in this case, unless you are also never showing anything from anyone but your friends and friends of friends which doesn't require private relays.
You require private relays (or a set of "safe" relays) for either showing a global feed or for seeing replies to your own posts, which is a kind of mini-global feed.
damus already works this way for the global feed, relays are selected depending on the view (home/global/notifications/dms) I only have the option for global for now to reduce confusion, I could show the filters for the other views but will require careful design work.
I think having relay sets so you can switch between a private and public set globally might be interesting, but yeah the design is really important since this can get confusing quickly.
Unless people are ONLY going to use nostr to create little private silos (which is a perfectly fine limited use-case), I think "global" (public commons) nostr is going to have to move in the direction of clients only showing you content from people you specifically follow and then optionally (WOT-style) also people your follows follow.
If relays have to try to "block" stuff (as opposed to just not sending stuff that clients aren't specifically requesting), then: A. nostr won't be able to scale and B. nostr will eventually have to become twitter (or mastodon).
Nobody should be looking at so-called "global feeds" (except in private nostr-driven silos). The global feed of "global" (public commons) nostr is like a high-bandwidth fiber cable with TCP/IP traffic on the Internet. That's something that carries what you are interested in along with a vast sea of what should seem to you to be garbage you are not interested in. Why would anyone want to try to look at all that garbage?