Building Bitchat: Offline first protocols and E2E Encrypted Social Apps with Nostr, Noise, and MLS

rabble

Playlists: 'WHY2025' videos starting here / audio

Learn how to build end-to-end encrypted social apps including the newly released Bitchat using Nostr and MLS (Messaging Layer Security). We'll go from Nostr basics through to encrypted groups, explore the open source libraries and apps already in production, and show how to build your own. Includes live coding demonstrating how to create secure, private social tools that actually scale. You'll leave knowing how to build real e2e apps using tested, working tools.

Building truly private social applications isn't just about adding encryption - it's about rethinking how we build social spaces. By combining Nostr's decentralized protocol with MLS's efficient group encryption, we can create social apps that are both private and practical.

The talk walks through:

Technical Foundation:
- How Nostr works: events, relays, and NIPs
- Understanding MLS tree-based group key management
- Implementing encrypted groups that actually scale
- Real-world performance and security considerations

Practical Building:
- Tour of working libraries
- Open source apps you can use today
- Common implementation challenges and solutions
- Live coding of a basic encrypted group chat

Beyond the Code:
- Why traditional platform encryption fails
- How forking solves community governance
- Building tools that empower rather than control
- Real examples from nos.social and communities.nos.social

You'll leave understanding not just the protocols, but how to build real applications that respect privacy and community autonomy. We'll look at actual code running in production, discuss practical challenges we've solved, and show how you can start building your own encrypted social tools today.

This isn't just theory - everything shown is running in production now. Whether you're interested in cryptography, social protocols, or just want to build better tools for human communication, you'll get concrete knowledge you can use.

Prerequisites: Basic familiarity with public key cryptography helpful but not required. Examples will use JavaScript/TypeScript but concepts apply to any language.

Licensed to the public under https://creativecommons.org/licenses/by/4.0/

Download

Embed

Share:

Tags