project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5

Patr

Nostr-compatible decentralized social media that uses open-source decentralized tech like ENS and IPLD to provide implementations of important parts of the Nostr protocol family.

Patr

Created At

HackFS 2023

Winner of

🏊‍♂️ ENS — Integration Prize

🃏 ENS — Wildcard

Project Description

Inspiration

The massive negative consequences of centralized corporate control of proprietary social media platforms have been felt for some time now. There are many benefits to open-source decentralized social media: transparency surrounding the code and algorithms that govern user and content recommendations, vastly increased user privacy, a lack of decentralized censorship authorities...these benefits have led to development of a huge numberof decentralized and Web3 social media platforms: img: Blockchain-based social media platforms have also spurred a huge amount of interest with their native ability to offer instant, decentralized, payments and decentralized content ownership to users and content-creators: img

But the sheer number of decentralized social media platforms that have been developed and are under development today has led to a paradox. Social media platform adoption inherently depends on network effects: the number of people already using the platform and developers creating apps and tools for the platform directly drives the number of users willing to try to adopt the platform. The sheer number of decentralized and Web3 social media platforms available leads to fragmentation of user experience and developer experience, which directly impacts the ability of any one of these platforms to succeed and grow.

The diversity of the tech around blockchains and decentralized storage is one of its biggest strengths but this diversity can also make it difficult for decentralized social media platforms to succeed when compared to the unified user and developer experience being offered by traditional centralized corporate social media. A decentralized social media platform should look to preserve openness while also trying to reduce user and developer experience fragmentation among different clients and interfaces and tools.

What it does

Patr is a Nostr-compatible decentralized social media platform that uses decentralized tech like ENS, IPLD, and libP2P to implement important parts of the Nostr protocol family that concern foundational issues like identity, event storage and linking, and relay interaction. Nostr is an extremely simple protocol for social media which defines simple behaviors for publishing and subscribing to events, using public-key cryptography to verify that events were created by particular users. Nostr does not require any particular implementation and any program can implement the Nostr protocol however it sees fit. Nostr has been growing in popularity with open-source developers with many implementations of Nostr clients and relays, in many diiferent languages, being developed as both user-facing Web and desktop clients and developer tools and libraries.

Patr users are identified by Decentralized Identitfiers created from ENS domain records that contain public keys. Each Patr user runs a Patr node at least part of the time which embeds an IPFS node that runs under the identity declared in the user's DID, verifying that this node can publish and deliver events for this user.

Each Patr node also functions as a Nostr relay allowing users to publish events to their node using any Nostr client and the node stores these events on IPFS using IPLD.

How it's Made

Implementation

  • Written in Go
  • Runs as a CLI program and daemon
  • Embeds an IPFS node for event storage
  • Pins all IPFS content to Web3.Storage
  • Uses libp2p for node-node communication

Technologies used

imgimgimg img

There are 2 simple steps to start using Patr. Users inttialize their node from the Patr CLI: i1 Then they add the ipfsKey and nostrKey public keys created as text records on the ENS domain they want to use with Patr: img

background image mobile

Join the mailing list

Get the latest news and updates