polis
Nerd Vision Join

Your story.
Your community.
Yours, truly.

A social network for the open web.

free to join · no password · no lock-in

You didn’t stop being social.
You stopped taking the bait.

The feed learned what set you off, then served you more of it.
To sell ads and sponsorships.
Being social was never supposed to feel like that.

Nerd Vision

* Filing GitHub issues does not — on its own — qualify you as “being social.”

Yours.

On polis, your name, your words, and your follow list belong to you.
You own what you write, you decide what you read and what conversations you host.
All of it answers to you.

Nerd Vision

“Yours” is provable, cryptographically.

No account. No central server. The three things you own are just three plain things sitting on the open web:

Identity
a domain + an Ed25519 keypair
Content
signed Markdown files on your server
Relationships
a public following.json

Nothing here was re-invented — it’s DNS, HTTPS, email, and Ed25519, load-bearing for thirty years. There’s no switch for a company to flip, because there’s no company in the loop.

Read the architecture →

Truly.

Not a promise we make — a fact we can’t revoke.
Each of these is guaranteed by how polis is built: true by design.

01
Your identity follows you across the web.

One identity, recognized on every polis site — not a fresh account you rebuild on each app. It’s yours the way a web address is yours: issued by no company, so no one can suspend it, impersonate you, or take it back.

02
Your posts and comments are yours forever.

Every post and every comment is saved as your own copy, on your own site, in a plain format that opens anywhere and reads the same in fifty years. Download all of it in one click, anytime — nothing held hostage, nothing to ask permission for.

03
Your people come with you.

The folks who follow you are following you — not an app that rents them back. Move to a new home or your own domain and your audience travels along. No starting from zero, ever.

04
No algorithm in the middle.

You see the people you chose to follow, in the order they posted. Nothing is boosted, buried, or tuned to keep you scrolling. Your feed answers to you — not to whatever holds your attention longest.

05
The door is always unlocked.

Leaving isn’t a fight with a settings menu. Move to another polis host, or your own domain, whenever you like — and nothing breaks. The exit was built on purpose, because a home you can’t leave was never really yours.

Nerd Vision

“Truly” is a signature check.

Every post is signed with your private key, over its own bytes. Flip a single character and the signature stops verifying. Anyone can check it against the public key at your /.well-known/polis — no trust in us required.

--- title: It’s Not Beyond Our Reach published: 2026-03-03T20:10:50Z signature: U1NIU0lHAAAAAQAAADMAAAALc3NoL…ygxftg ✓ verified --- # It’s Not Beyond Our Reach

That’s the whole trick behind “impossible to quietly take back.” The math doesn’t care who’s hosting the file.

How content is signed →

See it live.

Follow discover.polis.pub to learn about polis — how it thinks, how it works, what inspired it.

discover.polis.pub
all posts from discover.polis.pub by date
1 hour ago
What if there were theme marketplaces? Authors publish themes as polis posts — you browse, preview, and install through the same system you use to read.
3
3 hours ago
“Own your content” is easy to say. polis makes it operational: your posts are files, your identity is a key, your follows are a list, and your exit is cp -r.
1
5 hours ago
The discovery service stores content registrations, not content. It’s an index, not a host — your files stay on your domain.
0

Or, drop in on vdibart.polis.pub →

Nerd Vision

Discovery is an index, not a host.

Every polis site answers PQL. Ask it in plain words — and the same URL serves a page to people and JSON to machines. The Discovery Service just indexes what exists and where; the content itself never leaves the author’s own domain.

GET why.polis.pub/pql/all+posts+by+date Accept: application/json
{
  "query":   "all posts from why.polis.pub by date",
  "version": "pql.v1",
  "tenant":  "why.polis.pub",
  "items": [
    {
      "type":            "post",
      "title":           "Look, if you want to subsidize social media barons…",
      "url":             "/posts/20260609/look-if-you-want-to-subsidize-social-media-barons.html",
      "author_domain":  "why.polis.pub",
      "published":       "2026-06-09T17:12:11Z",
      "published_human": "June 9 · 5:12pm",
      "excerpt":         "…we can’t stop you. But we can show you a better way.",
      "body_html":       "<p>Look, if you want to subsidize social media barons…</p>"
    },  … 19 more
  ],
  "pagination": { "has_more": false, "next_cursor": "" }
}

These are why.polis.pub’s own posts, served straight from its domain — swap the sentence for any site and the shape is identical. Same URL, two representations: a page for people, this JSON for machines.

The PQL JSON API →

For the curious

Wondering how any of this holds up?

There’s no magic here — just decades-old, boringly reliable web technology, recombined in a new way. Just in case this sounds too good to be true, we wrote the whole thing down.

Read the docs →

domains + keys·signed files·open source·self-hostable

Your email is never shown and never shared. It’s only how you sign back in.

free to join no password no lock-in

Rather run it on your own server? Self-host with the open-source CLI →

* If you’re reading this, you’re probably a security nerd looking for security docs. We get it.

The polis security model →

Things people ask.

I'm still not getting it. How is polis different than…
Most social networks are designed to monetize your attention. polis was designed from a different set of principles. Your content and network remain yours. polis just provides the connective tissue between your content and the rest of the network.
What's the difference between polis-cli on github and polis.pub?
polis-cli on github is for those who want to self-host polis, which is easy to do but not for everyone. polis.pub provides a one-click hosted version of polis for those looking for an easier way to get started. polis.pub users can export their content and self-host at any time. This is not a promise, it's guaranteed by our architecture.
Where's my password?
There isn't one. You log in via email link. Your identity is a cryptographic key pair — stronger than any password and impossible to guess.
Will I be able to comment / follow any polis space?
Yes. One identity works across all polis spaces — hosted, self-hosted, or running from localhost.
How do people find me?
You share your address like a web page, and people follow you from wherever they are. You can also opt your posts into the network’s discovery service — an index that tracks what’s published and where, so your content can surface when people search. It’s entirely up to you what you list, and no algorithm decides who gets seen.
Do I have to share my email?
Email is for login links only. Never displayed publicly or shared with anyone.
What if polis.pub goes away?
Your site is a collection of files. Export anytime. Host anywhere. polis is open source — the network doesn't depend on any single service.
Where can I download my content?
You can download your site data anytime from the recovery page. Your content is always yours.
How do I decrypt my exported message archive?
Your export includes your messages as ciphertext plus the keys to unlock them with your password. Easiest: unzip it, run polis serve inside it, and enter your password in Messages to read them in the same web UI — fully offline. For a command-line extract, use polis dm decrypt. See the local-decryption guide.