Nosdag version 0.1.8 is out.
This one fixes a crash when you left the app open with macOS version, but could also happen with other systems. If Nosdag sat in the background for a while, you could switch back to a completely blank window. The system was reclaiming the app's memory and Nosdag never noticed. Now it notices, brings the window back on its own, and tells you what happened.
Also, a small fix to keep limit the amount of memory in use while the app is not in the foreground.
Please let me know if you see anything else.
Graham O'Nero
grahamonero@nosmero.com
npub1xhfc...3s4p
A fan of Monero and distributed social sites. Currently building Nosdag.com a Nostr client (with built in XMR tipping) that uses IPFS to store your notes, Nosmero.com - a Nostr client with XMR tipping and Swarmnero.com, a true p2p social site with XMR tipping built on holepunch/pears.
Nosdag Update:
0.1.7 is available for download at nosdag.com
This one is mostly about fixing the logic for puling your replaceable events (follow list, profile info, mutes, bookmarks, some settings). Now, whether you are using Nosdag or any other client everything should be identical and tracked correctly. This was a huge refactor of every replaceable event.
Other fixes:
-Paywalled articles: saving a draft keeps it encrypted instead of saving in clear text
-Cloud Bridge: dropped the pin on your previous note history whether or not the new one actually landed. A bridge that was down or slow could leave you with nothing pinned at all.
-One unreachable relay made a first save impossible.
-Replies and quote reposts now reach notifications and thread views properly, and you can follow a thread past its second level.
New:
-Note history IPFS backups can now include your imported timeline archive as well as the notes you've written in Nosdag, and you pick which halves go in the file. Each option explains what breaks if you leave it out, because they're needed at different moments. The note chain has to be on a machine before you post there, and the archive is usually the bigger half.
-If you have a complete IPFS archive on a machine but were never able to announce it, that can now be repaired. Previously only a run that imported something could announce, so the moment could be missed for good.
-A right-click menu with copy, paste and spelling corrections.
Thanks for checking this app out, and let me know if you see any other issues that I can address.
1/10
A quick guide to Nosdag: what it is, what it's for, and how it works.
Nosdag is a desktop Nostr client with an IPFS node built into it. The name is from “Nostr + Merkle DAG.” Merkle DAG is the magic behind IPFS.
Your keys and relays still do identity and signaling. But your notes, media and history live on an IPFS node running on your own machine, not in a relay's database. Other Nosdag users pull your notes straight off your node while you're running the app. Everything still gets published to relays too, so people reading you in Damus or Amethyst see you exactly as before.
Bring the npub you already have as the profile, follows and relays come with you.
Nosdag 0.1.6 is out.
-Fixed notifications bug: if someone quote-reposted your note or mentioned you without replying, Nosdag silently dropped it. Notifications are also stored locally now, so a relay being slow once no longer erases a notification permanently.
-Fixed Profile update bug where profile was frozen for the same class of reason. Nosdag read your kind 0 from cache and then never checked again, so a profile edited on another client never arrived. It revalidates now, and always re-reads your own at login. It was also taking whichever relay answered first rather than the newest, so a lagging relay could pin an old profile over a current one.
-A quote repost of your note can now be approved in Requests, which endorses it onto that note's thread.
-Search results now apply your mute list.
-There is now a banner on login to let you know a new version of Nosdag is available to download.
Thanks, and please let me know if you run across any other issues.
Nosdag 0.1.5 is out
What changed since 0.1.4:
Threads actually show the thread now. The right panel could render a note with one reply or none no matter how many existed, and clicking a reply sometimes opened nothing at all. Both fixed.
Replies the author hasn't endorsed now appear for everyone, slightly dimmed, below the endorsed ones.
Notifications stopped missing things. Mentions and reactions that only reached the big public relays didn't show if your relay list didn't include them. Notifications now check those relays alongside your own list.
The tabs look like tabs. The switches above the feed (Following / Popular / Trending Monero / Live) and inside My Node, Settings and the Tip Jar were easy to read as plain text and miss entirely. They're proper buttons now.
Hosting a friend no longer depends on catching them online. Flip hosting on for someone whose machine is off and the toggle used to just shut itself back off. Now your choice sticks: the row shows "Waiting to pin" and the app keeps retrying for as long as it's running, then tells you when they're pinned.
Host notes without the media. Each hosted follow has a media checkbox, untick it and only their notes get pinned, skipping the disk-heavy part.
Also fixed: clicking Requests could scroll the whole app under the top bar with no way back.
Downloads for Linux, macOS and Windows (untested):
Thanks, and let me know if you spot any issues or if you have suggestions.
Nosdag — a Nostr client that keeps your data on your own node
A desktop Nostr client. Your npub, your follows, your relays — plus an IPFS node in the app so your notes and media live on your machine. Monero ...
Nosdag update:
Three bugs were fixed, notifications weren't grabbing everything, right column threads were not populating, and the Requests dropped the header.
If you are pulling from github you can grab the update. Otherwise, builds will take a few hours as I'm still adding some other tweaks.
Nosdag update:
I forgot to remove the media limit for notes. It was a carry over from some of the code I reused from nosmero. As you are doing the storing and sharing with IPFS, a limit is pointless.
Working on that now.
MacOS DMG is live now on the site for download.
Some features of Nosdag:
- Every note you write lives on an IPFS node running inside the app, your machine is the source, relays only carry kilobyte pointers
- Import your entire pre-Nosdag timeline into IPFS. Your old notes are archived under a single pin and served from your node like everything else
- Back up your whole history — notes and media — as one .car file, restore it anywhere
- Your history follows you automatically when you switch between clearnet and Tor
- Link a pinning service (Pinata, Filebase) per account so your notes stay online while you're off
- Your node can host the people you follow so they survive going offline, you control the disk space, with a total cap and per-account caps
- Every note shows its durability: "held by N nodes", counted trustlessly from the DHT
- A media library lists every file you've published, with pin controls for your node and your bridge
- Photos and video served from your own node — no third-party hosts — up to 10 attachments per note
- Video and photos is scrubbed before it ships: GPS, device info and timestamps stripped, phone HEVC converted so anyone can play it
- Built-in Monero wallet, tips with on-chain verification, paywalled notes
- Point the wallet at your own daemon if you run one
- Anonymous mode routes the whole app over Tor — relays, IPFS, wallet, all of it — with a fail-closed kill switch if Tor dies
- Your node publishes a v3 onion service, so peers fetch your notes without ever seeing your IP
- Already run a Tor router or Whonix-style gateway? Point Nosdag at it instead of the bundled daemon
- Still ordinary Nostr: bring the npub you already have, profile, follows and relays come with you, and people on other clients read you normally
- Notes, threads, replies and long-form articles; log in with nsec, a local password, or Amber
- Replies from strangers land in a request queue you approve, so spam never reaches your threads while in Nosdag
Nosdag is up:
It's a desktop Nostr client that keeps your notes and media on an IPFS node running inside the app. Bring the npub you already have. Same follows, same relays, your notes readable in every other client What changes is where the data lives. It's now on your machine, not somebody's image host.
Your notes still go to relays as normal Nostr events, so anyone on any client reads you as usual. What's added is a small pointer to a content-addressed copy of everything on an IPFS node running inside the app: your history as a signed chain anyone can verify and walk, and media served from your machine rather than an image host.
Also in there:
-Monero tipping
-Tor mode that runs the whole app over Tor (or through your own tor router)
-whole-history export as a single file you can back up.
Linux builds are up and tested: AppImage, .deb, tar.gz.
For macOS or Windows it runs from source in four commands. The instructions are on the site. There's a Windows zip too, but I no longer have a Windows machine so no clue if it built correctly. If you test it, please tell me if it works or send me the error messages
This is beta so any feedback is appreciated.
Thanks!
Nosdag — a Nostr client that keeps your data on your own node
A desktop Nostr client. Your npub, your follows, your relays — plus an IPFS node in the app so your notes and media live on your machine. Monero ...
Happy Saturday Monero Fans:
It's been a while since I've been on here due to work and a new Nostr project I've been working on. I'm making this note from it right now.
It's called Nosdag (Nostr + Merkle DAG), and it's a desktop Electron app instead of a website. You log in with your existing nsec, so you keep your identity and your followers. I've been intrigued with IPFS for years and have been sketching out how to use it with Nostr. This project's goal is to improve the data sovereignty and privacy of Nostr users.
First, Nosdag doesn't depend on relays to store your notes. Relays can wipe your notes and you lose nothing. Your notes, media, and entire history live in an IPFS node embedded in the app, on your machine. Relays are mainly used so clients can find each other and fetch the latest CID pointers because your machine serves the content itself. But every note is also automatically published to regular relays (but with media served through an IPFS gateway), so it shows up in any Nostr client. Your history is an append-only chain where one CID names all of it, so a single pin replicates everything. You can export the whole thing as a one-file backup and restore it anywhere.
Second, there's an experimental anonymous mode that runs everything over Tor, relay communications, media transfers via your own onion address, even the Monero wallet traffic. In anonymous mode the relay signaling layer can run over onion relays, making fully-Tor Nostr possible.
Next, you can pin the accounts you follow so their notes stay reachable when they're offline, and link a pinning service (Filebase, for example) so yours do too, with per-note indicators showing what's backed up and how many nodes actually hold it.
And finally: native Monero tipping and a noncustodial tip jar, just like Nosmero, plus XMR paywalls, and tips that are verified on-chain before they earn the badge.
Still refining as time allows. Beta opens soon.


I'm really glad that there is no "you're doing it wrong" with monero.
I just realized that I haven't used my Macbook since I installed Zorin 18.1. Linux has come such a long way since 1999 when I first installed Redhat 6 from the CD that came with "Red Hat Linux 6 Unleashed" 😃
FAQ 1/2
How Swarmnero actually works — the P2P model, accounts, the wallet, and the tradeoffs.
**The peer-to-peer model**
*Do I need to be online to see posts?*
You can always see posts you've already replicated to your device — if you've followed someone and their feed has synced in the past, those posts stay local. You don't need the original author online to read them.
But new posts only arrive when either you and the author are both online at the same time, or a peer who already has their posts (a friend-of-friend who follows them, or the optional feed backup server) is online. So for a new follow who's offline, you may not see anything until the first time you're both online together or a mutual peer relays the data.
*Why can't I see an account's posts after I paste their Swarm ID?*
Following someone only tells your app who you're interested in — it doesn't instantly pull their data. You have to connect to a peer that has their feed (often the author themselves, or someone who follows them). If everyone involved is offline, you'll see their follow appear in your list but no posts until replication happens. Stay online for a minute after following and their content should start to arrive.
*What's a Swarm ID?*
It's a 64-character hex string that uniquely identifies your social feed. Share it with someone and they can follow you. It's a public identifier — it reveals no secret information and can be pasted freely.
*How does Swarmnero find people if there's no server?*
Three mechanisms:
Live Now — users who opt into discovery join a shared DHT topic; you see who's currently online and can click through to their profile.
Friends-of-Friends — when you follow someone, your app asks them for a sample of the people they follow and recent tagged posts from those people.
Hashtag search — posts tagged with #tags are searchable across your network (own feed + follows + FoF cache).
If a post has no hashtag, it stays visible only to your direct followers. That's intentional — it's the privacy floor.
**Accounts & identity**
What happens if I lose my Secret Key?
The account is unrecoverable. There is no central authority to reset it. Export your Secret Key from Accounts → Export Secret Key and store it somewhere safe (password manager, paper backup). If the account has a password, you'll need that too.
*Can I sign into the same account on two devices?*
Not simultaneously — yet. Each account's feed is a single-writer Hypercore, and two devices writing to it at the same time corrupts the feed. Swarmnero shows a warning banner and disables posting when it detects a duplicate instance. For now, sign out on one device before using the other. Real multi-device simultaneous posting requires a different underlying structure (Autobase) and is on the roadmap.
*Does importing a Secret Key on a new device copy all my data?*
Content you've signed (posts, follows, profile, DMs) replicates in as peers come online. The follower list and DM conversation list rebuild over time as those peers reconnect. The wallet is separate — it has its own 25-word seed you restore independently via the "Restore Wallet" flow.


As Nosmero is pretty stable at this point, I turned my attention to a pure p2p XMR solution for social media.
**I made Swarmnero** — a p2p social network with Monero built in at the protocol level. It runs on Holepunch's Pear Runtime. Zero infrastructure. You install Pear once, then launch Swarmnero with one command, auto-updates arrive over p2p.
It shares philosophy with Nostr (your keys = your identity, no central gatekeeper) but trades relays for a pure p2p stack. Posts, follows, DMs, and media replicate directly between devices over Hyperswarm DHT. No intermediaries to censor, index, or go dark.
**What's inside:**
- Ed25519 identity, signed events — your keys never leave your machine
- Native Monero wallet (monero-ts WASM) for tipping posts and replies
- Paywalled posts: author encrypts the body, buyer pays XMR to a per-post subaddress, key auto-released after on-chain verification
- X25519 E2E DMs between mutual follows (crypto_secretbox)
- Hashtag search + friends-of-friends discovery, no algorithm
**Install:**
npm i -g pear
pear run pear://t6athit7zo98y7wb7kupmeaihxu3p5tft5s55nx5a5s634meppgy
Eventually I'll get around to making standalone download files for Mac, Linux, and Windows.
Full guide + screenshots + source: 

Swarmnero — P2P Social with Monero
Peer-to-peer social, private by default, tipping in XMR.