Community

Apps

Noflux

Noflux does something wonderfully unfashionable: it puts Nostr long-form posts beside RSS, Atom, RDF and JSON feeds, then treats reading as a calm, self-hosted habit instead of another timeline screaming for attention.

Noflux icon
Apps The product layer Clients, signers, publishing tools, wallets and protocol utilities.
Back to Nostr
Apps

Apps shelf

Apps pages collect clients, signers, tools, developer libraries and product research without turning the app into the whole network.

Apps All Apps pages App routeProduct profiles, categories, tools and source links Browse appsClose shelf

App orientation

App categories

App profiles

0xchatadvanced-nostr-searchAegisAlbyAlby GoAlby HubAlby HubAlby SDKAmberAmberAmethystAmethystApp and product researchApplication-specific dataBlossomBlossom spec NIP-B7BookstrBorisBouquetCalendar by FormstrChachiNostr Apps DirectoryCoracleCoracleCorny ChatCreatrDamusDamusDeveloper stack researchDittoDittodiVineDocstrDTANEmojitoFlotillaFlycatFormstrFountainFreeFromFundstrfutrGIF BuddyGittrgo-nostrGossipGossipGrimoireGroups NIP-29HablaHablaHello Nostr — ResourcesHighlighterHiveTalkhomebrew-nostrHORNET StorageHugo2NostrHyperNoteIrisIrisJumblekanbanstrKeys BandListrLNBits NostrmarketLumeLumilumiLUMINAMapstrMarmot Protocolmatrix-nostr-bridgeMeetstrMemestrMindsmonstrmostardMostronaknak — Nostr Army KnifeNalgorithmNarrnashboardNDKNegentropyngitNofluxNosNos Socialnos2xnosbinnosclNostorg Feature MatrixNostr App ManagerNostr Apps Directory GuideNostr clients feature listNostr Compass — ProjectsNostr Developer GuideNostr Development KitNostr Events MonitorNostr MCP ServerNostr NestsNostr PlaygroundNostr Service ProvidersNostr Writernostr-post-checkernostr-protocol/nostrnostr-rubynostr-sdknostr-sdk-ffinostr-sdk-flutternostr-to-rssnostr-toolsNostr.bandnostr.buildnostr.co.uk ClientsNostr.how — Clientsnostr.hsNostrabilityNostrAppsNostrApps category — AudioNostrApps category — CareerNostrApps category — CommunityNostrApps category — CurationNostrApps category — Direct MessageNostrApps category — DiscoveryNostrApps category — File SharingNostrApps category — Group ChatNostrApps category — MeatspaceNostrApps category — OnboardingNostrApps category — SignersNostrApps category — Toolsnostrchecknostrdbnostrdb-rsNostreeNostreonNostriaNostridNostrium / read.nostr.comNostrmoNostrubenoStrudelnoStrudelNostterNosturNosturNotedeckNpub.proNpub.worldnsec.appnsiteNsiteNstart.meObsidian Nostr WriterOlasOpenvibeOracoloOstrich WorkOwn Your PostsP2P BandPazPeridotPhoenixPlebeian MarketPostizPostr / write.nostr.comPrimalPrimalPrimal Article Editor / Reads authoringPrimal Studiopynostrpython-nostrRecommended Application HandlersRelay Toolsrsslayrust-nostrrust-nostr docsSatelliteSatellite EarthSatlantisSatShootShakespeareShopstrSlidestrSnortSnortStemstrswift-nostr-clientTreasuresWavlakeWavlakeWikifreediaWikistrYakiHonneYakiHonneYakiHonne mobile/web app directoryYondar

App pages

Deep dives

Field guides

Awesome Nostr branches

Research and library

Source inventory

Deep Research: Clients, apps and product surfacesDeep Research: Developer stack and toolingResearch Map: nostrapps.comResearch Source: 0xchatResearch Source: 0xchat — NostrApps pageResearch Source: advanced-nostr-searchResearch Source: Aegis — NostrApps pageResearch Source: AlbyResearch Source: Alby — NostrApps pageResearch Source: Alby GoResearch Source: Alby HubResearch Source: Alby Hub GitHubResearch Source: Alby SDKResearch Source: AmberResearch Source: Amber — NostrApps pageResearch Source: AmethystResearch Source: Amethyst GitHubResearch Source: Awesome Nostr ResourcesResearch Source: BookstrResearch Source: BorisResearch Source: Boris — NostrApps pageResearch Source: BouquetResearch Source: Bouquet — NostrApps pageResearch Source: Calendar by FormstrResearch Source: ChachiResearch Source: Chachi — NostrApps pageResearch Source: CoracleResearch Source: Coracle — NostrApps pageResearch Source: Corny ChatResearch Source: DamusResearch Source: Damus — NostrApps pageResearch Source: DittoResearch Source: Ditto — NostrApps pageResearch Source: DocstrResearch Source: DTANResearch Source: DTAN — NostrApps pageResearch Source: EmojitoResearch Source: Emojito — NostrApps pageResearch Source: Flotilla — NostrApps pageResearch Source: FlycatResearch Source: FormstrResearch Source: Formstr — NostrApps pageResearch Source: FountainResearch Source: FreeFromResearch Source: FreeFrom — NostrApps pageResearch Source: FundstrResearch Source: futrResearch Source: futr — NostrApps pageResearch Source: GIF BuddyResearch Source: GIF Buddy — NostrApps pageResearch Source: GittrResearch Source: go-nostr GitHubResearch Source: GossipResearch Source: Gossip — NostrApps pageResearch Source: GrimoireResearch Source: Grimoire — NostrApps pageResearch Source: HablaResearch Source: Habla — NostrApps pageResearch Source: Hello Nostr — ResourcesResearch Source: HighlighterResearch Source: HiveTalkResearch Source: HORNET Storage — NostrCompassResearch Source: IrisResearch Source: Iris — NostrApps pageResearch Source: JumbleResearch Source: Jumble — NostrApps pageResearch Source: Keys BandResearch Source: Keys Band — NostrApps pageResearch Source: ListrResearch Source: LNBits NostrmarketResearch Source: LumeResearch Source: LumilumiResearch Source: LUMINAResearch Source: MapstrResearch Source: Marmot ProtocolResearch Source: MeetstrResearch Source: MemestrResearch Source: MindsResearch Source: monstr GitHubResearch Source: mostardResearch Source: MostroResearch Source: my.nostr.comResearch Source: nak — Nostr Army KnifeResearch Source: nak GitHubResearch Source: NalgorithmResearch Source: Narr — NostrApps pageResearch Source: nashboardResearch Source: NDK GitHubResearch Source: NDK NPMResearch Source: NegentropyResearch Source: Noflux — NostrApps pageResearch Source: Nos SocialResearch Source: Nos Social — NostrApps pageResearch Source: nos2xResearch Source: nos2x — NostrApps pageResearch Source: nosbinResearch Source: noscl GitHubResearch Source: Nostorg Feature MatrixResearch Source: Nostr App ManagerResearch Source: Nostr Book — KindsResearch Source: Nostr DesignResearch Source: Nostr Developer GuideResearch Source: Nostr NestsResearch Source: Nostr Nests — NostrApps pageResearch Source: Nostr PlaygroundResearch Source: nostr-post-checkerResearch Source: nostr-protocol/nostr GitHubResearch Source: nostr-sdk crates.ioResearch Source: nostr-sdk-ffi GitHubResearch Source: nostr-tools GitHubResearch Source: nostr-tools NPMResearch Source: Nostr.BandResearch Source: nostr.buildResearch Source: nostr.co.uk ClientsResearch Source: Nostr.howResearch Source: Nostr.how — ClientsResearch Source: Nostr.how — ProtocolResearch Source: Nostr.how — What is Nostr?Research Source: Nostr.orgResearch Source: NostrabilityResearch Source: NostrAppsResearch Source: NostrApps category — AudioResearch Source: NostrApps category — CareerResearch Source: NostrApps category — CommunityResearch Source: NostrApps category — CurationResearch Source: NostrApps category — Direct MessageResearch Source: NostrApps category — DiscoveryResearch Source: NostrApps category — File SharingResearch Source: NostrApps category — Group ChatResearch Source: NostrApps category — MeatspaceResearch Source: NostrApps category — OnboardingResearch Source: NostrApps category — SignersResearch Source: NostrApps category — ToolsResearch Source: nostrcheckResearch Source: nostrdb GitHubResearch Source: NostreeResearch Source: Nostree — NostrApps pageResearch Source: NostriaResearch Source: Nostria — NostrApps pageResearch Source: NostridResearch Source: Nostrmo — NostrApps pageResearch Source: Nostrmo GitHubResearch Source: NostrubeResearch Source: noStrudelResearch Source: noStrudel — NostrApps pageResearch Source: NostterResearch Source: NosturResearch Source: Nostur — NostrApps pageResearch Source: NotedeckResearch Source: Npub.proResearch Source: Npub.worldResearch Source: nsec.appResearch Source: NsiteResearch Source: Nstart.meResearch Source: Nstart.me — NostrApps pageResearch Source: Obsidian Nostr Writer — NostrApps pageResearch Source: OlasResearch Source: Olas — NostrApps pageResearch Source: OpenvibeResearch Source: OracoloResearch Source: Oracolo — NostrApps pageResearch Source: Ostrich WorkResearch Source: P2P BandResearch Source: PazResearch Source: PeridotResearch Source: Peridot — NostrApps pageResearch Source: PhoenixResearch Source: Phoenix — NostrApps pageResearch Source: Plebeian MarketResearch Source: Plebeian Market — NostrApps pageResearch Source: PrimalResearch Source: Primal — NostrApps pageResearch Source: Primal Article Editor / Reads authoringResearch Source: Primal StudioResearch Source: pynostr GitHubResearch Source: python-nostr GitHubResearch Source: Registry of KindsResearch Source: Relay Tools — NostrApps pageResearch Source: rsslayResearch Source: rust-nostr docsResearch Source: rust-nostr GitHubResearch Source: SatelliteResearch Source: SatShootResearch Source: ShakespeareResearch Source: Shakespeare — NostrApps pageResearch Source: ShopstrResearch Source: Shopstr — NostrApps pageResearch Source: SlidestrResearch Source: SnortResearch Source: start.nostr.netResearch Source: StemstrResearch Source: TreasuresResearch Source: WavlakeResearch Source: WikifreediaResearch Source: Wikifreedia — NostrApps pageResearch Source: WikistrResearch Source: Wikistr — NostrApps pageResearch Source: YakiHonne mobile/web app directoryResearch Source: YondarResearch Source: Yondar — NostrApps page
Apps14 min readdesktop reader for RSS and Nostr long-form feeds

Noflux

Noflux is a feed reader first and a Nostr app second. That is its strength: it lets NIP-23 articles enter the same quiet reading workflow as RSS, Atom, RDF and JSON feeds, with OPML, APIs, keyboard shortcuts and self-hosted discipline around it.

The quick readNoflux is fiatjaf's minimalist, Miniflux-based feed reader. It supports classic feeds and Nostr NIP-23 articles, connects to a writer's outbox relays, imports and exports OPML, exposes REST/Fever/Google Reader style APIs, and expects a self-hosted PostgreSQL setup.

A feed reader with a Nostr door

Noflux is not trying to turn reading into a new social feed. That alone makes it refreshing. Its homepage calls it a Nostr and RSS feed reader, and the first promise is not virality, discovery magic or a new public square. The promise is readability. You subscribe to sources, scan unread items, open articles, mark things read, save what matters and move on. Nostr enters through the side door: alongside RSS, Atom, RDF and JSON feeds, Noflux can subscribe to NIP-23 long-form posts from Nostr accounts.

That makes Noflux useful for a very specific kind of reader. If you already follow writers through RSS and you also care about Nostr long-form posts, you know the awkward gap. One world lives in feeds, OPML exports, old reader apps and quiet self-hosted habits. The other world lives in relays, npubs, naddrs and clients that often treat articles as an extension of social posting. Noflux does not ask you to pick a side. It lets Nostr articles behave like feed items.

The project trail is clear. Noflux lives at noflux.nostr.technology, and the code is in fiatjaf/noflux. The repository was created in December 2024, is Apache-2.0 licensed, written primarily in Go, and describes the project as a minimalist and opinionated feed reader. The man page credits fiatjaf as the author and names Miniflux by Frederic Guillot as the base. That last part matters more than the logo: Noflux inherits a mature reader philosophy and then grafts Nostr article discovery onto it.

Why Miniflux matters here

Miniflux is one of those apps that knows exactly what it wants to be: a small, readable, self-hosted feed reader with as little theater as possible. Noflux keeps that spine. The feature list still sounds like a serious reader's checklist: OPML import and export, categories, bookmarks, favicons, multiple enclosures for podcasts and media, full-text search, keyboard shortcuts, responsive design, themes, a REST API, webhooks, and support for existing reader apps through Fever or Google Reader APIs. This is not a novelty client built around one Nostr feature. It is a real reader into which Nostr was invited.

The infrastructure choices show the same temperament. Noflux is written in Go, bundles static files into the application binary, publishes prebuilt binaries and packages, and can be installed through Docker or system packages. Unlike Narr, which is a single-binary SQLite desktop or personal server reader, Noflux expects PostgreSQL. The requirements page says PostgreSQL 9.5 or newer is the supported database, and the feature page calls the full-text search a Postgres benefit. That makes Noflux less casual to install, but more familiar to people who already run self-hosted services.

Privacy is part of the reader story, not a separate slogan. The official feature page says Noflux removes pixel trackers, rewrites FeedBurner-style original links, opens external links with safer attributes, uses a no-referrer policy, can proxy images to avoid mixed-content and tracking issues, blocks external JavaScript in content, sanitizes external HTML, and can play YouTube through less invasive routes such as youtube-nocookie.com. If you read a lot, this matters. A feed reader is a machine that visits pages on your behalf. You should care about how it handles trackers, scripts, referrers and scraped content.

How an npub becomes an inbox

The Nostr code is compact and worth reading. Noflux accepts Nostr-flavored feed URLs: nostr:, nostr://, npub and nprofile. It will also resolve a NIP-05 identifier when it is explicitly given with a Nostr prefix. Once it has a profile, it stores the feed as a Nostr profile feed, builds an nprofile, and sets the site URL to njump for that profile. This is a practical choice. Noflux is not trying to become a general Nostr browser. It needs stable web URLs for entries and profiles inside a reader.

When the feed refreshes, Noflux fetches the author's outbox relays through go-nostr's SDK and subscribes to nostr.KindArticle, the long-form article kind behind NIP-23. In code terms, that means the reader asks for events from that author, filters by the article kind, and uses a limit of 300. It then reads the article title from the title tag, uses published_at when available, turns the Markdown body into HTML with the NIP-23 helper, builds an naddr link, and stores a feed entry whose URL points to njump.

That is a lovely little bridge. NIP-23 says long-form posts are addressable kind:30023 events, written in Markdown, usually carrying tags such as d, title, image, summary and published_at. Noflux does not ask the writer to syndicate a separate RSS feed. It lets the Nostr article itself become the feed item. It also replaces nostr: links in article bodies with readable HTML links to njump, including profile names when it can resolve them. That turns the strange-looking NIP-19 strings into something a reader can click without needing to understand every encoding detail first.

The tradeoff is visible too. Noflux is reading a public author's long-form stream; it is not trying to mirror every relay forever or solve every archival problem. The limit, the relay discovery path and the dependence on outbox metadata all mean that a missing relay setup can feel like a missing article. That is not a flaw so much as a reminder of what Nostr reading actually depends on. A writer can publish a perfect NIP-23 event, but readers still need hints, relays and clients that know where to look.

A serious reader, not a social app

This is where Noflux should be judged fairly. It is not a replacement for Primal, Iris, Damus, Coracle or noStrudel. It is not where you go to argue under notes, watch short posts roll by, manage a follower graph or live inside a social client. Noflux is for a quieter job: collect long-form reading, keep it organized, make it searchable, let existing reader habits keep working, and give Nostr writers a place in that stack.

The external-reader support is a big part of the appeal. NostrApps calls out Reeder and ReadKit-style access, and the Noflux documentation backs that up through Fever and Google Reader compatibility. The API reference is not a small marketing page; it documents authentication, feed discovery, feed CRUD, entry updates, OPML import/export, user management, counters, health checks and application version endpoints. Noflux also supports per-application API keys, which is exactly the kind of boring feature that tells you the project expects real use.

There is also a wider integration layer. The feature page lists more than 25 third-party integrations, including Instapaper, Linkding, Matrix, Notion, Ntfy, Pinboard, Pocket, Readwise Reader, Shaarli, Shiori, Telegram and Wallabag. You may not use all of them. You probably should not. But they show the kind of product Noflux is: a reading control room. Nostr articles become part of the same workflow as web articles, newsletters, podcasts, video feeds and saved reading destinations.

This is also why Noflux belongs in a Nostr app archive even though it looks, at first glance, like old web infrastructure. The open web never really disappeared; it just became less glamorous than timelines. Nostr long-form posts are stronger when they can sit beside older publishing routes instead of replacing them by force. Noflux respects that continuity. It lets a reader keep the old discipline of subscriptions while adding the newer protocol layer where it is genuinely useful.

What to test before moving in

If you are evaluating Noflux, start with your actual reading life. Import an OPML file. Add a normal RSS feed. Add a Nostr author by npub or nprofile. Add one NIP-05 address with the explicit Nostr prefix. Then watch what happens during refresh. Do the NIP-23 posts appear with titles, readable content and sane dates? Do njump links resolve the article and profile correctly? Do the outbox relays produce the articles you expected, or does the writer publish through relays that your reader does not find?

Then test the reader habits. Use the keyboard shortcuts. Open the original article. Fetch original content for a web feed. Bookmark an entry. Export OPML. Connect a mobile or desktop reader through the compatible API if that is part of your workflow. Check search. Check authentication. If you are hosting it for more than yourself, look closely at PostgreSQL, backups, HTTPS, user accounts and API keys. Noflux is calm on the surface, but it is still a server holding your reading history.

The best reason to use Noflux is not that it is "decentralized." The best reason is that it respects reading. Nostr long-form posts are most powerful when they do not have to be trapped inside one client. Noflux gives them another life: not as a social notification, but as an article in an inbox you control. That is a small idea with teeth. If Nostr is going to matter for writers, researchers and people who actually read slowly, apps like Noflux are part of the bridge.

Sources worth opening

This article keeps claims close to the project site, repository, documentation and the NIP-23 text that defines the article event Noflux reads.

Back to the Crays Nostr page
Apps route visual cue 1
Apps route visual cue 2
Apps route visual cue 3
Apps route visual cue 4
Apps route visual cue 5

How to use this page

Find the product surface first.

Search clients, signers, product categories or developer tools when you need a specific app, source file or comparison clue.

AppsKeep exploring AppsApp routeProduct profiles, categories, signer guides and source links.Browse apps
Apps route visual cue 1
Apps route visual cue 2
Apps route visual cue 3
Apps route visual cue 4
Apps route visual cue 5

Bring something back

Ask, suggest, submit or nominate.

Use these links when something is missing, a source is stale, or a public Nostr builder belongs in the map.