Feature Request - NOSTR Social Protocol Integration
Is your feature request related to a problem? Please describe
NOSTR is a newer social networking protocol that uses decentralized profiles and relay servers to create a truly non-domain-specific social networking profile and system. It has integrated Bitcoin lightning and payment functions integrated into it. Once someone has a NOSTR profile they can connect it to a multitude of apps, sites, and services using their public and private keys and/or security passphrase, meaning that a user could connect their NOSTR profile to each of their podcast user aliases and have their episodes go out on the NOSTR network.
The protocol supposedly has a very simple code-base making it somewhat easier to implement than ActivityPub (although ActivityPub is still much more widely used).
- https://nostr.com/ - Code information and basic background
- https://github.com/nostr-protocol/nostr - Additional implementation and code details
Bitcoin lightning wallets are baked into the profiles and allow other NOSTR users to "Zap" posts, kind of like Boosting works in the Podcast 2.0 standard.
I know this is not necessarily something that the team would be excited about given some of the past problems with ActivityPub, but it is starting to take off and is more decentralized than ActivityPub. It also seems although I wouldn't know firsthand, to be easier to use and implement than ActivityPub.
Describe the solution you'd like
- Allow a Castopod user to connect and authenticate their NOSTR profile to one or more podcasts that they host on their Castopod instance.
-
- This should not create a new public user/profile for each podcast but integrate into the existing user profile to avoid duplication.
- Send out the same post/Note on NOSTR for each podcast episode and/or social post that gets posted via ActivityPub for each podcast
- Receive and display any replies, likes, and reshares along with the ActivityPub ones.
-
- Differentiate between NOSTR and ActivityPub replies by adding a small NOSTR icon (https://github.com/SovrynMatt/Nostr-Website-Button-Design ) next to comments/replies left to/from NOSTR and either the Mastodon or ActivityPub logo (https://commons.wikimedia.org/wiki/File:ActivityPub-logo-symbol.svg ) next to replies from that protocol
- -- Note: I did not know that ActivityPub itself has a logo!
- Integrate NOSTR reply notifications into the existing bell notification system in the top right corner
- Allow a user to optionally use their Castopod instance for their NIP-05 authentication, which allows them to connect their NOSTR profile to the Castopod instance as a trusted domain, similar the activitypub @user@domain.com structure.
-
- This is NOT required for a user to use or authenticate with NOSTR.
Here are some Wordpress plugins integrating NIP-05 authentication and/or posting to NOSTR as examples. I know the Wodpress codebase is VERY different than Castopod's, but any implementation examples are probably helpful.
- NIP-05 Authentication via Wordpress - https://github.com/easydns/wp-nostr-nip05
- Posting to NOSTR via Wordpress - https://github.com/pjv/nostrtium
Describe alternatives you've considered
I do not know if there are any alternatives other than writing code myself, which will work out very badly for all involved.
Additional context
I think this feature could have significant benefits for Castopod and Castopod Users
- Unlike Mastodon and ActivityPub it is truly decentralized
- The protocol includes built-in micropayments for posts (and may eventually be integrated with the Podcasting 2.0 standards)
- Those developing the protocol keep a list of active projects using it, so free advertising for Castopod
- It offers podcast hosts/creators another platform for their voices to be heard
- Easier to implement and maintain than ActivityPub
This is also a newer social protocol so, Castopod would be getting in on the ground floor, so to speak, meaning a certain level of exposure for the team/platform. Some Podcasting 2.0 advocates/developers such as Adam Curry (adamcurry@ nostrplebs.com) and Dave Jones (npub1pvdw7mm7k20t9dn9gful8n5xua5yv8rmgd9wul88qq5dxj80lpxqd39r3u) are already exploring NOSTR and have profiles. Umbrel already has app packages both to run NOSTR hubs and Snort, a self-hosted NOSTR web interface.