TL;DR: nostr1 is a protocol that has the power to replace twitter, Telegram, and other things.
WTF is nostr?
nostr is new and confusing but also really cool. It is the simplest open protocol that is able to create a censorship-resistant global “social” network once and for all.
- It doesn’t rely on any trusted central server, hence it is resilient.
- It is based on cryptographic keys and signatures, so it is tamperproof.
- It does not rely on P2P techniques, therefore it works.
nostr’s design is very basic:
- There are two components: clients and relays. Each user runs a client. Anyone can run a relay.
- Every user is identified by a public key. Every post is signed. Every client validates these signatures.
- Clients fetch data from relays of their choice and publish data to other relays of their choice. A relay doesn’t talk to another relay, only directly to users.
To use nostr, you need a key and a client.
- Everybody runs a client. It can be a native client, a web client, etc.
- To publish something, you write a post, sign it with your key and send it to multiple relays (servers hosted by someone else, or yourself).
- To get updates from other people, you ask multiple relays if they know anything about these other people.
- Anyone can run a relay. A relay is very simple and dumb. It does nothing besides accepting posts from some people and forwarding to others.
- Relays don’t have to be trusted. Signatures are verified on the client side.
Keys
Your keys are your identity. You can think of your public key
(npub...
) as your username and your private key
(nsec...
) as your password.
Two quick things: – ⚠️ DO NOT PASTE YOUR PRIVATE KEY INTO WEBSITES2 ⚠️ – Store your keys securely and do not share your private key
Keys exist in two formats, hex
and the above mentioned
npub/nsec. You can use a key converter
tool3 to convert between the two
formats.
Use Alby or nos2x to generate your keys, or generate them using a dedicated tool like rana. The aforementioned extensions will store your keys safely (or at least more safely).
You can also generate your keys by other means if you know what you’re doing.4 It’s still early days, so be prepared to get rekt.
Clients
Periodically check nostr.net which keeps a curated list of clients or have a look at the client comparison table.
Here are some I like:
- astral.ninja – Fork of Branle with different UI & global feed
- snort.social – Very simple feed with automatic image-upload
- iris.to – Clean interface, supports block lists and webtorrents
- yosup.app – Mobile-friendly and twitter-like
- hamstr.to – Twitter interface, multi-account support
Mobile clients: – Damus (iOS) – Twitter-style iOS client, also works on MacOS5 – Amethyst (Android) – Twitter-style Android client
There are more native clients in development, Nosky6 and Nostros7 being two of them.
On Android, you can also use the Kiwi Browser which allows you to install Alby or nos2x, which in turn allows you to use any web client. Yosup and Hamstr have good mobile experiences, for example.
There’s also Nostr Console, noscl, and nostr-commander if you’re into CLI stuff.
Relays
Relays are dumb servers that you can leave behind at any time (so they can’t turn evil). You need to connect your client to a relay for it to work. There are many relays & you can run your own.
Run your own:
Tools
nostr can do more than just social media.
Games
Games? WTF? Yes, games:
- Jester – Chess over nostr by theborakompanioni
Pro Tips
Some things work a bit differently and aren’t obvious.
Finding others
Use this search query to find nostr keys of people you follow on twitter:
This uses the nostr.directory verification
message, but the &pf=1
limits the twitter search to
only people you follow.
Posting images
Most clients will display image URLs as images, so you can just upload any image to image sharing sites and post the URL like this:
https://i.ibb.co/w4WvnYb/image.png
This also works for videos.
Here are some free image hosts:
You can also use your Twitter display picture by following this guide.
Verifying yourself
If you have a domain and want to have a “verified” checkmark, here is some useful info:
Stats
Ever since Jack joined (and funded some nostr devs) and Elon put it on his naughty list a flood of people came streaming in. Since everything is out in the open, you can see this nicely in the stats.
Sats
Some clients will render Lightning invoices natively, showing the recipient, amount, and a pay button. One such client is Damus, which shows a nice little widget and a pay button.
Search
Most clients support search, but there’s also:
Bots
You can create a search bot at sb.nostr.band and then follow it to receive new posts matching a keyword or hashtag right into your feed.
- How to build a nostr gm bot by Gigi
- nostr_bot Rust crate
RSS
You can also create an RSS feed with posts matching some keywords at rss.nostr.band and use your favorite RSS reader app to follow different nostr conversations.
Pods
- nostrovia – weekly roundup
- BR018 – jack, fiatjaf, and jb55 talk nostr with nvk (transcript, archive)
- Lightning Tidbits 769571 – fiatjaf talks nostr with André Neves
- CD63 – building nostr, a censorship resistant alternative to twitter, with fiatjaf, jb55, and kukks, hosted by ODELL (transcript, archive)
- BA691 – A Native Protocol for Social Media by jack
- BTC111 – Decentralized Social Media & Bitcoin with jb55 hosted by Preston Pysh (transcript, archive)
- What’s new with Stacker.News and Nostr? a conversation with Keyan Kousha and Max Webster (transcript, archive)
Explorers
More info
- nostr.how by Jeff Gardner
- nostr.net aka awesome-nostr by @aaaljaz
- nostr-protocol/nostr by fiatjaf
Articles and explainers:
- What Is Nostr and How Do I Use It? by Walker V.
- usenostr.org by Pluja
- What is Nostr, and how to start using Nostr by Vishal
- Nostr, an Introduction by Greg Heartsfield
- Nostr Newcomers Most Common Questions and Answers by pitiunited
It’s still very early days. There’s known privacy issues and other things.
nostr is an open protocol and most clients are open-source. You are encouraged to report bugs and create PRs!
Translations
- Chinese translation by Cakksakkas
- French translation by Marco.BTC.fr
- Spanish translation by BitByBit
- German translation by cercatrova
- Italian translation by avallanosterza
- Brazilian Portuguese translation por fernandoporazzi
About these Resources
Most of the text above is copied from nostr-protocol/nostr and nostr.net. I just left some stuff out, so consider this an opinionated summary.
This site is open source. Improve this page.
nostr = Notes and Other Stuff Transmitted by Relays↩︎
You have to trust whoever is running the website, obviously, and some clients are vulnerable to XSS attacks. A lot of people got rekt already, and had to re-build their nostr identity because of it.↩︎
There’s also the damus.io/key but DO NOT use it for private key conversions. Don’t paste your private key into websites. Just don’t.↩︎
Apple Silicone only (M1 or M2 chip)↩︎
Fork with small modifications/fixes: Install a nostr relay↩︎