Nosdag

Nostr client · desktop

A Nostr client that keeps your data on your own node.

Bring the npub you already have. Nosdag speaks ordinary Nostr — your follows, your relays, your notes readable in every other client — and adds an IPFS node inside the app so the data itself lives on your machine instead of somebody's server.

entry 3 · signed

Swapped to anonymous mode. Same account, same notes, nothing sees my IP.

bafyreihq4k…7mzt

entry 2 · signed

Attached a photo. It went to my node, not somebody's bucket.

bafyreic2xn…q9de

entry 1 · signed

First note from my own machine.

bafyreif8ld…3vha

Ordinary Nostr events on relays — and on your node, each one linked to the note before it by content address. Pin the newest and you have replicated the whole history, verifiable against your key by anyone.


What it is

Nostr, with somewhere for the data to live

Nostr already gives you an identity nobody can revoke and a network nobody owns. What it leaves open is where your notes and media actually sit — in practice, on relays and image hosts run by other people. Nosdag answers that half without changing the protocol you're already on.

Compatibility

The npub you already have

Import your key and your follows come with you. You post normal signed events to normal relays, and people on other clients read you as usual. Nothing here is a walled garden.

Storage

An IPFS node in the app

Notes, media, and long-form also live on a node running on your machine, addressed by content — so a relay going down doesn't take your history with it.

Payments

Monero tips, no middleman

A wallet is built in. Tip any note or profile in XMR, or paywall a post and sell the key. No custodian, no invoice server.

Privacy

An anonymous mode over Tor

Run the whole app through Tor — relays, peers, media, wallet. Peers reach each other through onion services. Already running your own Tor router? Point Nosdag at it.

Availability

Stay reachable, on your terms

Link a pinning service, host the accounts you follow, or export your entire history as a single file. Nothing about that is the app's decision to make.


Run it

From source, in four commands

There are no packaged installers yet — running from source is the way in right now, and it takes about a minute on a machine that already has Node.

  1. Install Node.js 22.12 or newer

    The repo ships an .nvmrc, so with nvm it is one command.

    # with nvm — otherwise install Node 22 however you prefer
    nvm install 22 && nvm use 22
  2. Clone the repository

    git clone https://github.com/grahamonero/nosdag-pub.git
    cd nosdag-pub
  3. Install dependencies

    This downloads the Electron runtime and the IPFS (Kubo) binary the app bundles, so give it a moment and a working network connection.

    npm install
  4. Start Nosdag

    On first launch you pick a network posture: ordinary internet, or anonymous over Tor.

    npm start
Optional extras.

ffmpeg on your PATH lets you attach video from a phone — Nosdag strips the metadata and converts it so everyone can play it. tor is needed for anonymous mode; if it is not on your PATH, start the app with TOR_BIN=/path/to/tor npm start.

Packaged builds are not out yet.

Installers for Linux, macOS, and Windows are the next thing being built. When they exist they will appear on the releases page — until then that page will be empty, and the four commands above are the honest answer.


FAQ

Questions worth asking first

Is Nosdag finished?

No. It works — notes, media, threads, tips, Tor mode and history backup are all built and used daily — but it is pre-release software without packaged installers, and anonymous mode in particular is experimental. Treat it as something to try, not somewhere to put your only copy of anything.

Are my notes private?

No more than on any other Nostr client. Your notes are public and signed — anyone can read them and verify they came from your key. That is the point of the format.

What Nosdag protects is different: anonymous mode hides your IP and location from relays and peers, Monero keeps payment amounts and addresses off a public ledger, and direct messages are encrypted. If you need the content of a note to be private, do not post it.

What happens to my notes when my computer is off?

Someone has to be holding a copy. Your node serves your data, so when it is off, your media can stop resolving for other people.

Three answers ship in the app: link a pinning service so a copy stays online, let the people who follow you host your account on their nodes, or accept that you are only reachable while you are running. Nosdag shows you which of these is true rather than implying your data is magically everywhere.

Will my existing account and follows work?

Yes. Paste your nsec at sign-in and your profile, follow list, and relays come with you — they live on relays, not in any one client. Post from Nosdag and people reading you in Damus, Amethyst, or anything else see your notes normally.

Sign in with an Amber bunker if you would rather not paste a key. Browser-extension signing is not available, because a desktop app has no browser extension to talk to.

What does Nosdag add on top of plain Nostr?

A place for the data. Alongside the usual relay event, each note is stored on the IPFS node inside the app as a signed object that links to your previous one, and a small pointer on relays says where the newest one is. Anyone can follow that pointer and pull your whole history, verified against your key.

That is what makes the rest possible: media served from your node instead of an image host, long-form and history that survive relays dropping your events, and a portable archive you can back up as one file. It uses standard Nostr event kinds to do it, so nothing here breaks other clients.

What if I lose my key?

Then the account is gone. There is no reset, no support address, no recovery — your private key is the account, and nobody else has it, which is the whole arrangement. Export it from Settings the first time you open the app and keep it somewhere offline.

Can I use my own Tor router instead of the bundled Tor?

Yes. On the Anonymous Mode page, point Nosdag at any running SOCKS proxy — a tor router, a Whonix-style gateway, or system tor — and it uses that instead of starting its own.

One trade-off: without control over that Tor instance the app cannot publish an onion service, so it can read the network but nobody can fetch your notes and media directly from your node while that setting is on. The app tells you this on the same page.

Why Monero rather than Bitcoin or Lightning?

Because a tip on a public timeline is a public payment. Monero keeps the amount, the sender, and the receiving address off a readable ledger by default, which fits a social app better than a transparent chain does. Nosdag is Monero-only by design.

Which platforms does it run on?

It is an Electron app, so Linux, macOS, and Windows all work in principle from source with Node 22+. Day-to-day development and testing happen on Linux, so that is the best trodden path today. Packaged, signed builds for all three are the next milestone.

Does it interfere with an IPFS node I already run?

No. The bundled node uses its own ports — API 5201, gateway 8201, swarm 4201 — specifically so it cannot collide with a standard IPFS Desktop or Kubo installation.

Where is the code, and what is the licence?

Everything you run is in the nosdag-pub repository, MIT licensed. Read it before you trust it with a key — that is a reasonable thing to expect of software like this.