Understand
Every text — constitutional article or law — follows the same public path: first the debate is scheduled, then debated, then put to a sealed-ballot vote. These are the exact rules the platform applies.
Stage changes are automatic: they happen as soon as the current period ends.
7 days
As soon as it is published, citizens vote with a sealed ballot on how long the debate should last (1 to 6 months). During this step the author can still refine the goal and the text.
1 to 6 months
The text is debated in public for the chosen duration: support, opposition, questions and proposed improvements.
14 days
Each citizen approves or rejects the text with a sealed ballot. The debate stays open during the vote, and you can change your mind until it closes: only your latest ballot counts.
At closing
The guardians open the ballot total. The text is adopted, rejected or dismissed depending on the majority and the turnout; adopted constitutional articles receive an official number.
A text is only adopted or rejected when two conditions are met.
The text is adopted if “for” votes exceed “against” votes, and rejected otherwise. A perfect tie dismisses the text.
At least 20% of the reference population (United States: 339,996,563 inhabitants) must take part — 67,999,313 voters. Below that, the text is dismissed.
The duration with the most votes wins; ties go to the longer duration. If nobody votes within 7 days, the text is dismissed.
Each adopted constitutional article receives the next number, in Roman numerals (Article I, II, III…). Numbers are never reassigned.
On MyDemocratie nobody can read your vote — not other members, not the administrators, not even the platform itself. And yet anyone can check that the votes were counted correctly. Here is how, in six simple pictures.
When you vote, your browser slips your choice into an encrypted “envelope”, on your own device, before sending it. What travels over the Internet is unreadable to everyone.
Along with the envelope, your browser attaches a mathematical proof that it contains exactly one allowed choice — without saying which. Nobody can slip in two votes or a rigged ballot.
Every envelope is pinned on a public board, in order, each one attached to the previous like links in a chain. None can be removed or altered without it showing. You get a tracking number to find yours.
These envelopes have a surprising property: they can be added up without being opened. At closing you get a single envelope containing the vote total. No individual ballot is ever opened.
Opening the total requires a key. That key never existed in one piece: it was created directly as pieces, handed to independent guardians. A majority of them is needed to open the total; one guardian alone can do nothing. After the count, the pieces are destroyed.
Anyone can redo the whole computation: every ballot’s proofs, the board’s chain, the addition and the opening of the total. Each text’s “Verification” page does it right in your browser.
This is also why results only appear at closing: during the vote, only the number of participants is known.
For the curious and for auditors. The code is open and everything below can be checked from public data (/api/elections/:id).
Each guardian holds one piece of every election key. Together they open only the vote total, and only after closing; alone, they cannot open anything.
No guardian is in service: new ballots cannot open until a guardian is active.
Any independent organisation — association, university, citizens’ group… — can run a guardian. All it takes is a small server with Node.js 24 and persistent storage.
GUARDIAN_ID=4 GUARDIAN_HOME=./guardian-data node guardian/guardian.ts initPLATFORM_URL=https://… node guardian/guardian.ts runThe full procedure and the security model are described in guardian/README.md.
Debate spaces are public. So that everyone can speak freely, every member commits to these rules.
Criticise ideas, never people. No insults or discriminatory remarks.
Each discussion is about the text being debated. Open a new discussion for a new point.
Never publish personal information — yours or anyone else’s.
Threats, intimidation and sexual or abusive content are forbidden.
After posting, wait for another member to reply before writing again. You can edit your message while it is the latest in the discussion.
Any member can report a message. Administrators review reports and may hide messages that break the charter.
Yes — and only you. Your browser keeps a receipt: your choice and your ballot’s tracking number. You can back it up in your personal vault, encrypted with a passphrase only you know, to find it again on another device. The tracking number also lets you check that your ballot is on the public board.
Nobody. Your ballot is encrypted on your device and never decrypted on its own: only the total is opened, by a majority of guardians. Neither the administrators nor the platform hold the key. The only exception would be a majority of guardians colluding — which is why they must be independent.
Because ballots stay sealed for the whole vote: there is no intermediate count. This also prevents partial results from influencing voters. During the vote only the number of participants is shown; the guardians open the total right after closing.
Yes, while the vote is open. Your new ballot replaces the previous one: only the latest counts.
Your pseudonym is your only public identity: it appears on your proposals and messages. Your email address is never displayed.
Any registered member who has chosen a pseudonym. To limit abuse, each member can publish up to 5 proposals per 24 hours.
Turn on two-factor authentication from “My account”: an authenticator app (Google Authenticator, 1Password, Authy…) will give you a six-digit code at each sign-in.
Yes, from “My account”. Your profile is anonymised and you can no longer sign in. Ballots already cast stay in the box, still sealed, and your messages are kept unlinked from your identity, to preserve the integrity of ballots and debates.
Browse the texts in progress, or propose your own.