Thread

🛡️
Here is a very brief video demo of Creatr, our new Patreon-style relay + file host for creators. Lots more to come and many other features to share, but wanted to get something out so you can see how it works with a nostr client and browser extension.

Replies (31)

🛡️
Yes, with the advantage that it is interoperable with the existing protocol. Our goal with this product is nostr client and social graph interoperability, not decentralization. There are centralization tradeoffs for access controlled content. If it needs to be spread on many relays, it needs to be encrypted. If it’s encrypted you need a key delivery mechanism tied to a recurring payment, either by a centralized entity or an always online user. You also need a way to modify/revoke future access to the now decrypted notes. The media/files also have to be uploaded somewhere that will access control the files and allow you to update which pubkeys have access and when. I’m sure smarter folks than myself will figure all these things out but for now we built a relay that does the heavy lifting and works out of the box with most nostr clients.
I love it. I can see the market for it. I see "xyz for Nostr" directly attacking every business SaaS and winning. There's absolutely a market here, and the unique value that Nostr provides is not just going to catch them sleeping, it will be unassailable. Incumbents cannot directly compete on interoperability without destroying their own moats. I'm here for it!
Is your relay completely custom? Or is there an existing relay implementation which restricts read access to authorized users in the way that you've demonstrated? I'm looking at nip 42 implementations and finding that they usually about restricting write access rather than read access. Or maybe I've misunderstood. I would truly appreciate your input!
Thanks for the fast reply Mazin, so cool. I think I have that rust relay up and running. Docs make me wonder if the NIP-42 implementation is focussed on write rather than read. If you have custom rolled yours, was stirfry your starting point? Do you have any plans to share or license your code? I am not sure what's involved in that, I am just trying to figure out an entry point to explore further. image
🛡️
We use strfry for our relay backends. For AUTH that is on connect (not for a specific type of REQ) we have a fairly simple custom websocket that sits in-between. Once the user passes AUTH, you can simply connect them to strfry. For more complicated types of access control, the middleware becomes a lot more complex as it needs to parse each request. Strfry will eventually have NIP-42 built in - it is often discussed in the strfry telegram as a desired feature. The truth is it’s a complicated spec to implement for anything outside of “on connection” and for that use case it’s a poor solution (a header would be better, more like NIP-98). I’ve ranted about this before but ultimately it’s not going to change and I’ve embraced NIP-42 for the time being.
Question: If I were to use this, I'd still want all of my content to be public (no tiers blocking certain content), I'd want it to be more of a: "If you like what I'm building, here's an option for you to support me on an automatic monthly basis, rather than zapping my notes." Do you think that will be a popular use for this in the future? Or will it really be geared toward people who have some of their posts public, and some behind a paywall?
🛡️
Right now the only thing required to use the relay is NIP-42. It’s possible we could adapt this to work for private groups too but I’d need more details. I haven’t kept up too well with the current proposals. Are the messages in these private groups encrypted? How does moderation/access work? I put together the inbox.nostr.wine prototype that allows anyone to write events that p-tag a user with an inbox and users with inboxes can only query notes they have authored or been p-tagged in. The main focus there is minimizing metadata leaks.
🛡️
I believe I gave your pubkey access to play with inbox.nostr.wine but let me know if you have any issues AUTHing there. I’d like to adapt that to work for most of the “private” use cases. 
 Please let me know if there’s something you need that doesn’t fit in to that current design and I’ll see what I can do to adjust it to fit.