Launch WordPress locally, mirror via Tor, publish to IPFS, sign with cryptography, and announce to the discovery network.
git clone https://github.com/Shubham-Rasal/FreePress.git cd FreePress docker compose up -d
WordPress, Tor, IPFS, and the frontend run in containers on your machine.
Access WordPress at localhost:80, write your posts, and build your site. Everything runs locally with no accounts.
Click "Create Mirror" to generate a static copy served through your Tor onion address. Automatic syncing to IPFS happens every 60 seconds.
Generate an Ed25519 keypair, add metadata (title, description, tags), and broadcast your signed manifest to the Waku discovery network.
Browse the Explore tab to see publications announced by others. Search by tags, verify signatures, and access content via IPFS or Tor.
Your content is pinned on IPFS and discoverable via Waku. Even when you go offline, mirrors keep your publication accessible.
Every manifest includes version, site CID, timestamp, publisher public key, and Ed25519 signature. Anyone can verify authenticity without trusting a central authority.
| Layer | Technology | Purpose |
|---|---|---|
| CMS | WordPress + MySQL | Local content creation |
| Anonymity | Tor (onionize) | Onion service for site access |
| Mirroring | wget + torsocks | Static site generation via Tor |
| Storage | IPFS (Kubo + Cluster) | Distributed content storage |
| Identity | Ed25519 keypair | Cryptographic signing |
| Discovery | Waku (libp2p + protobuf) | P2P manifest announcements |
| Backend | Node.js + Hono | API for signing and mirroring |
| Frontend | React + TypeScript + Vite | Dashboard UI |
"Censorship-resistant publishing isn't about hoping platforms let you speak. It's about taking control. Run your own stack. Sign your own manifests. Join a network that can't be shut down."