The modern web isn’t designed for the user. It’s designed for the advertiser. They track your cursor’s hesitation to predict your weakness.
You aren't the client. You are the inventory.
White Noise
npub1whtn...r3ec
The chat with no phone number and no central server to shut down. Powered by Bitcoin and Nostr.
github.com/marmot-protocol/whitenoise
It is no longer about whether Bitcoin works. We are past the "if." We are now in the "how."
Privacy isn't a setting. It's an act of coordination. @Max
Build on protocols. Platforms are just landlords.
If you have to think twice before typing, you've already lost your autonomy.
Centralized platforms hide data to own the user. Tools for freedom show data to empower the user.
This is amazing. 👏 @JeffG


Nostr Stats
Nostr Stats
Real-time analytics for the Nostr network
If the server goes down and you lose your friends, you never really 'had' them.
Significant progress requires the ability to have private thoughts. If you cannot think in private, you cannot think for yourself.
Privacy is the environment where progress happens. Without it, we don't evolve: we conform. @JeffG
s://primal.net/whitenoise/we-all-have-secrets-and-thats-ok
Everyone has secrets: health struggles, business terms, private thoughts.
These aren't crimes. they are the components of a private life.
View article →
Everyone has secrets: health struggles, business terms, private thoughts.
These aren't crimes. they are the components of a private life.


We all Have Secrets, and That
"Nothing to hide" is a misunderstanding of how freedom works. Privacy isn
Stop renting your privacy from corporations. Start owning it.


There is no such thing as free data storage. Someone is paying. If it's not you, who is it?
Math doesn't ask for a visa, and code shouldn't check your passport. Identity is a key you hold, not a location you live in.
We don't know who you are. That’s the best feature we have.
If an app requires your identity to function, it’s not a tool. It’s a registry.


Comfort is expensive. It costs you your freedom. The right path is rarely the easy one.
That’s why we build (on Nostr) 👏 @JeffG
🥳 First Community Call of 2026
📆 TODAY, Jan 6. 1600 UTC
Want to add Marmot to your project or talk decentralized group encryption? Join us to learn the latest (or tell us what we’re doing wrong)
See you there:
meet.fulmo.org/marmot
Two years ago, encrypted messaging on Nostr was an unsolved problem.
Today, it has a protocol, an app, and a community.
From NIP-104 to Marmot. From research to release.
The 2024-2025 Year in Review:


White Noise & Marmot Protocol: 2024-2025 Year in Review
Between 2024 and 2025, White Noise evolved from a research experiment into a production mobile messenger, establishing the Marmot Protocol to fill ...

Aaand... we’re back with the monthly recap 😎
December was a big month for us: two conference talks, some real face time as a team, and solid progress toward real-time messaging.
🎤 Conferences and Speaking
- @Btrust Dev Day 🚀 Josefina + Javier presented MIP-5: private mobile notifications without leaking metadata (reliable push, hidden social graph)
Watch the presentation:
- Africa Bitcoin Conference: @Max introduced Marmot and why MLS-based group encryption brings real group messaging to Nostr.
Interested? The talk is here:
- @JeffG also ran a two-hour hands-on workshop on building with Nostr and Marmot, unfortunately this was not recorded.
🏝️Team Gathering in Mauritius
With most of the team together for the conferences, we held a team meeting to discuss the streaming architecture work now underway.
Beyond the technical sessions, we answered questions from conference attendees curious about encrypted messaging on Nostr, met potential collaborators, and got to know each other better outside of GitHub and video calls.
👥 Community Call Highlights
The December community call (first Tuesday of each month, 1700 UTC) covered local WebSocket notifications and the battery and reliability tradeoffs for keeping connections alive on mobile.
We also did a deep dive on the privacy design decisions behind MIP-5.
🧩 The highlight was introducing Tubestr, the first non-chat Marmot client: Tubestr is a private video sharing app designed for kids to share their creations with a trusted circle only. Check it out at
🔧Technical Progress
Real-Time Messaging Architecture
Until now, White Noise polled for new messages every 2 seconds in the foreground and every 30 seconds in the background.
This works, but it means messages never arrive instantly and background delivery feels sluggish.
The streaming architecture work underway will change this: messages arrive the moment they're sent.
This is early work that will roll out over several releases. The groundwork includes a new subscribe_to_group_messages API that delivers an initial snapshot plus live updates for new messages, reactions, and deletions.
On the Flutter side, a new ChatStreamProvider consumes the Rust SDK stream directly, handling sorting and member resolution.
We also added an enriched chat list API that returns summaries with latest message previews, and fixed message reordering loops by using stable sorting with createdAt plus message id as a tiebreaker.
📲 Android Platform Stability
Several fixes this month target real-world Android issues.
Notifications weren't arriving after device restart because the foreground service only initialized the Rust library without the full database configuration.
We created a WhitenoiseInitService that properly initializes the backend from both the foreground service and the main app, making it safe to call from either entry point.
We also fixed 🧼 data cleanup on uninstall so chats and profiles no longer persist after reinstalling, simplified the battery optimization permission flow to avoid stuck denial loops, and added graceful camera permission handling with an "Open Settings" link when access is denied.
💅 UI and UX Improvements
Chat bubbles now follow a standardized layout and dimension spec.
We added a new WarningBox widget used across profile screens to remind users that their profile information is public.
The media modal got fade animations and stable image positioning so the image no longer shifts when toggling overlays.
The language selector now correctly shows the system language on first load.
🦫 Marmot Protocol Spec
MIP-00 and MIP-02 now specify base64 encoding for KeyPackage and Welcome content instead of hex. This reduces payload size by roughly 33% and uses a tag-based encoding declaration.
This is a protocol hard fork, so readers must accept both formats during the transition period, but new implementations must write base64.
✏️ Marmot TypeScript SDK
The TypeScript SDK saw significant development this month with 9 merged PRs.
The main focus was building out the MarmotClient class as the primary interface for developers.
The proposals and commits flow is now implemented, allowing proper MLS group state management.
Group message reading now includes retry logic for handling unreadable messages gracefully.
Member addition and group membership methods were refactored into cleaner abstractions, and the SDK picked up base64 content encoding to match the spec change.
A new generic NostrNetworkInterface makes it easier to integrate with different Nostr implementations.
💻 MDK Language Bindings
MDK is now published to Rubygems and PyPI (as mdk-python), making it easier to integrate Marmot into Ruby and Python applications.
These join the existing Kotlin and Swift bindings, all generated via UniFFI from the core Rust crate.
💪 Security Audit
We're currently undergoing a security audit with Least Authority. This month several fixes landed based on their findings.
MDK now uses a v2 group image format with separate upload seed derivation, ensuring uploaded images use a derived keypair rather than the encryption key directly.
Migration tooling handles the transition from v1 to v2 automatically while maintaining backward compatibility.
🛠️ Expect more fixes and improvements in the coming months as the audit continues.
⏳ In Progress
A few notable PRs are still in flight.
The optimistic UI work will make messages and reactions appear instantly while syncing with the server.
NIP-55 support will enable integration with Amber and other external signers.
Media layout standardization will bring dynamic grid sizing that respects screen width constraints.
🌷 Ecosystem Growth
Several new projects have expressed interest in adding Marmot to their stack.
More to share as those conversations develop.
❤️ Contributors
Thanks to everyone who contributed this month: erskingardner, josefinalliende, hzrd149, gzuuus, untreu2, jgmontoya, codeswot, Quwaysim, ayushsaksena30, AbdulbasitSaid, mubarakcoded, dannym-arx, and kuba-04.
-
If you're building on Nostr and want to add encrypted messaging, check out the Marmot Protocol spec.
If you want to contribute to the reference implementation, White Noise is open for PRs.
The next community call is the first Tuesday of January at 1700 UTC.

Tubestr — Creative Freedom for Kids
A safe, parent-guided video platform where kids can film, edit, and share videos. Built on Nostr for true privacy and ownership.

X (formerly Twitter)
White Noise (@whitenoisechat) on X
25/ If you're building on Nostr and want to add encrypted messaging, check out the Marmot Protocol spec:
https://t.co/Y3vQwAHpSP
If you want to co...

📱 White Noise & Marmot Protocol
📄 Monthly Recap - November 2025
November was a month of shipping, learning, and connecting with the global freedom tech community.
- Conference stages in Costa Rica
- Podcast conversations about - decentralized identity
- We kept pushing forward on our mission to build communication infrastructure owned by no one.
🚀 What we shipped
This month we released two versions of White Noise, continuing our rapid iteration cycle:
- White Noise v0.2.0 - Our first major update since launch, featuring notification improvements and picture sharing capabilities
- White Noise v0.2.1 - A follow-up release addressing battery optimization and notification refinements
- Picture sharing- Users can now share images in their encrypted chats
- Notification fine-tuning - Better control over how and when you receive message alerts
📕 What we learned
Version 0.2.0 shipped with a bug: background notification polling was set to 1-second intervals, which caused excessive battery drain on mobile devices. This was a valuable lesson in the tradeoffs between real-time responsiveness and power efficiency. We quickly addressed this in v0.2.1 by implementing smarter polling intervals that respect your battery while still delivering timely notifications.
💪 What we're working on
The team is heads-down on several improvements:
- Smart notifications - Click any notification to jump directly to that specific chat
- Image zoom - Pinch-to-zoom on shared pictures for a better viewing experience
- Major UI redesign - A comprehensive visual refresh is in progress
- Key rotation NIP - Continued work on the Nostr Implementation Possibility for secure key rotation
🫶 Community & Ecosystem
Shoutout to Danny for creating language bindings for the Marmot Development Kit (MDK) across Swift, Kotlin, and WASM. This cross-platform foundation makes it easier for developers to integrate Marmot's privacy primitives into their applications, regardless of the platform they're building for.
We're also excited that Tubestr has integrated Marmot for private video sharing. This is exactly the kind of ecosystem growth we envisioned - other Nostr projects adopting Marmot's protocol to add privacy features to their platforms.
🚙 On the Road
November took the team to Costa Rica for the Nostrxxx Conference, where we hosted a White Noise House - a dedicated space for privacy-focused builders to connect, collaborate, and demo their work. We shipped a release at the event and spent focused time advancing the key rotation NIP with fellow Nostr developers.
🎙️ Podcast Appearances
- @Max on Bitcoin Takeover Podcast - A deep 4-hour conversation covering White Noise, Marmot, Bitcoin layer 2s, and the philosophy of building freedom tech
- @JeffG on You're The Voice (Ep. 107) - Discussing decentralized digital identity and encrypted messaging with @Efrat Fenigson
📆 What's Next
December is shaping up to be just as eventful:
- Africa Bitcoin Conference (December 3-5) - We're heading to Mauritius for Africa's premier Bitcoin gathering. The conference brings together innovators, builders, and changemakers shaping the future of technology and financial sovereignty across the continent.
- White Noise House Mauritius - Another gathering space for privacy builders and freedom tech enthusiasts
💡 As always, White Noise and Marmot Protocol remain open-source, community-driven, and focused on building communication infrastructure that belongs to everyone and no one. Thank you for being part of this journey.
Try White Noise: [(whitenoise.chat)


Moving to a different server, this is the actual link
meet.fulmo.org/marmot
View quoted note →