Today’s social applications have fundamental issues:
Your messages to someone in the next room travel thousands of miles to a data center and back. Your data lives on someone else’s computer, not yours.
You can’t move your data between platforms. You duplicate the same content across Facebook, Twitter, Instagram—each locked in its own silo.
Companies track everything you do, leak your data, and use it to manipulate elections and arrest people.
Want to post a recipe with structured ingredients? A bike ride with GPS data? A mathematical equation? You can’t. Platforms only support what they’ve built.
One company’s “community guidelines” apply to billions of people across different cultures, countries, and values. They act as Big Brother, deciding what you can say.
What you see is controlled by secret algorithms optimized for engagement, not truth or your actual interests.
Mau is a convention, not a platform. It defines how peer-to-peer social applications should work using:
| Traditional Social Media | Mau |
|---|---|
| Data on company servers | Data on your disk |
| One app controls everything | Any app can access your data |
| Platform decides features | Developers innovate freely |
| Privacy by trust | Privacy by cryptography |
| Central servers | Peer-to-peer |
| Unstructured text | Structured content (recipes, events, reviews…) |
When you post something, it’s saved as a file in a directory on your computer:
~/.mau/
alice-FPR/ # Your posts
hello-world.json.pgp
recipe-lasagna.json.pgp
bob-FPR/ # Bob's posts you've synced
comment-on-hello.json.pgp
Instead of plain text, you create typed objects:
1{
2 "@context": "https://schema.org",
3 "@type": "Recipe",
4 "name": "Mom's Lasagna",
5 "recipeIngredient": ["pasta", "tomato sauce", "cheese"],
6 "recipeInstructions": "Layer and bake at 180°C for 45 minutes"
7}
This means:
Your identity is your PGP key fingerprint. When you create a post:
1# Public post
2echo '{"@type":"SocialMediaPosting"...}' | gpg --encrypt --sign -r alice-FPR
3
4# Private message
5echo '{"@type":"Message"...}' | gpg --encrypt --sign -r bob-FPR
How do you find your friends on a decentralized network?
When you follow someone:
bob-FPR?”Each peer runs a simple HTTP server:
GET /alice-FPR → List of Alice's files
GET /alice-FPR/hello-world.json → Download specific file
GET /alice-FPR/hello-world.json.versions/abc123 → Old version
Mau clients periodically:
You can read everything offline. Sync when back online.
Alice creates a post:
1# Alice writes a post
2echo '{"@type":"SocialMediaPosting","headline":"Loving Mau!"}' \
3 | gpg --encrypt --sign -r alice-FPR \
4 > ~/.mau/alice-FPR/post-2026-02-27.json.pgp
Bob syncs and sees it:
1# Bob's client requests: GET /alice-FPR?since=2026-02-26
2# Downloads post-2026-02-27.json.pgp
3# Verifies Alice's signature
4# Decrypts and displays in Bob's feed
Bob comments:
1# Bob creates a comment referencing Alice's post
2echo '{"@type":"Comment","about":"/p2p/alice-FPR/post-2026-02-27"}' \
3 | gpg --encrypt --sign -r bob-FPR \
4 > ~/.mau/bob-FPR/comment-on-alice.json.pgp
Alice syncs and sees the comment:
1# Alice's client: GET /bob-FPR?since=last-sync
2# Downloads comment-on-alice.json.pgp
3# Displays under her original post
No central server. No company. Just files, crypto, and HTTP.
Mau is a protocol, not an application. You can build:
No blockchain. No complex consensus. No tokens.
Your app shares data with all other Mau apps. A blog post you create can be:
Existing websites using JSON-LD (millions already do for SEO) can become Mau peers by:
You build. Users install. That’s it.
Files live on the user’s disk. They can:
tarrmNow that you understand why Mau exists and what it does, let’s dive into the technical details:
👉 Core Concepts - Deep dive into storage, encryption, and networking
“The best way to predict the future is to invent it.” — Alan Kay