The self-hosted community platform you actually own.
Forum, chat, voice, whiteboard and your own homepage. One install, on your server, for one community.
nodyx.org, the project's own community, running the same Nodyx you can install. The screenshots show the French interface; Nodyx speaks eight languages, English included.
Nodyx gives a community one home that it owns: a forum that search engines can read, real-time chat, voice channels with screen sharing, a collaborative whiteboard, events, polls, and a public homepage you build by drag and drop. Everything runs on one server that you control, from a cheap VPS to a Raspberry Pi behind your home router.
curl -fsSL https://nodyx.org/install.sh | bashNo Docker, no cloud account, no domain required. The installer sets everything up and hands you an admin account a few minutes later.
Before you scroll. Nodyx isn't here to fight Discord, and it isn't the only open alternative. Matrix, Discourse, Stoat, Fluxer, Mattermost, Rocket.Chat, Haven and others are good projects, and we list them on a page we wrote ourselves: Why Nodyx, and the alternatives we respect. The fight isn't between us. It's between locked silos and communities that own themselves.
A real forum, with categories, sub-forums and the latest message of each, so you see at a glance where the life is. Every thread has a clean public URL, structured data and a place in the sitemap: what your community writes can be found again, by search engines and by the next newcomer. Next to it, real-time chat with replies, reactions and pins, end-to-end encrypted private messages, and voice channels with screen sharing.
Screen sharing opens on the Nodyx Stage, in full screen or as a floating window, and anyone who joins the room while you share sees it straight away.
The homepage is yours to compose. Rows and columns on a 12-unit grid, native widgets, a draft that only you see until you publish, and a preview on desktop, tablet and mobile. Need something that doesn't exist yet? The Extension SDK lets anyone build a widget or a game in plain JavaScript, and extensions.nodyx.org installs it in one click. Extensions run sandboxed: they never see real accounts, their storage is walled off, their network access goes through a guarded proxy.
| Eight languages, translated by the community. Each language is one plain text file: no account, no tool, no platform in between. See where each one stands, live. | Profiles that tell a story. Levels, reputation, tags, presence: a member is more than a username. |
- A home server, no open port. The Nodyx relay, written in Rust, gives your instance a public address (
yourclub.nodyx.org) with only outbound connections. Website, chat and small-group voice work from behind a home router. Large voice rooms go through an SFU that still needs a publicly reachable server; making it work behind a router too is the next big piece of work. - Voice that scales. Small rooms talk peer to peer. When a room grows or someone shares their screen, it switches to an SFU on your own server: one upload per speaker, whatever the size of the audience.
- Games inside the voice channel. Activities dock right into a voice room, so you play together without leaving the call.
- A network of communities. Each instance can appear in a shared directory and be searched from the others, without any central account.
- Streamer Hub. Soundboard with a viewer queue, mobile stream deck, seven OBS overlays, Twitch chat integration. Guide
- Library, music, wiki, garden of ideas. Frames, badges and banners shared by members, a public music showcase, a wiki, and a place where ideas grow with the community's votes.
- Moderation tools. Roles and grades, a moderation log, IP and account bans, and OctoGuard, an optional auto-moderator (word, link and flood filters, welcome messages, custom commands), every switch off by default.
The community-tools landscape isn't a battle. Each project optimizes for different things, and the right pick depends on what you are building. Here is how we would put it to a friend:
| Project | What it does best | Where it fits |
|---|---|---|
| Discord | Real-time voice and chat for closed groups, mobile first, a huge bot ecosystem | Your community is private and informal |
| Matrix (Element) | A federated protocol with bridges to almost everything | Interoperability is non-negotiable |
| Discourse | Indexed, searchable forums and knowledge bases | Long-form discussion is your core |
| Mattermost / Rocket.Chat | Enterprise compliance, a Slack replacement at scale | You have a procurement team |
| Haven | Privacy-first chat, native clients, no telemetry | Every byte must stay on your own machine |
| Stoat / Fluxer | A Discord-shaped interface, easy migration | Your members already know Discord |
| Lemmy | Federated, Reddit-style threaded forums | You want a fediverse-native presence |
| Nodyx | Forum, chat, voice, whiteboard and homepage in one install, with a relay for home servers | You want to own a multi-format community on your own hardware |
If you only need one or two of these formats, another tool above may suit you better. Our honest take, alternatives included.
Self-hosting means keeping the community safe is your job. Nodyx is built to make that job smaller.
| Surface | How it's handled |
|---|---|
| Passwords | Argon2id with OWASP parameters, old bcrypt hashes migrated transparently |
| Private messages | End-to-end encrypted (ECDH P-256 and AES-256-GCM). Keys never leave the browser, the server only stores ciphertext |
| Two-factor | TOTP apps, or Nodyx Signet, a passwordless ECDSA P-256 app |
| Every input | Validated against a schema, parameterized SQL only |
| Every response | CSP, HSTS, frame protection, sanitized HTML |
| Rate limiting | Keyed on the real visitor address, behind Cloudflare, Caddy or a tunnel alike |
| Backups | Proven every night by an automatic restore, not just a copied file |
Found a vulnerability? Please don't open a public issue. Write to security@nodyx.org or use GitHub's private advisories. We answer within 48 hours, assess within 7 days, and credit you in the release notes unless you'd rather stay anonymous. Full security policy
You need a machine running Ubuntu 22.04 / 24.04 or Debian 11 / 12 / 13 (64-bit, ARM64 included, so a Raspberry Pi 4 or 5 works), and curl.
curl -fsSL https://nodyx.org/install.sh | bashThe installer asks how your instance should be reached:
| Mode | You need | You get |
|---|---|---|
| Nodyx Relay (recommended) | Nothing, outbound connections only | yourclub.nodyx.org, even behind a home router |
| Your own domain | A domain and ports 80/443 open | HTTPS with Let's Encrypt, full control |
| sslip.io | Ports 80/443 open, no domain | A free automatic address |
Already behind a tunnel? install_tunnel.sh covers Cloudflare Tunnel, Pangolin and home-made tunnels (frp, rathole, your own reverse proxy).
It installs Node.js, PostgreSQL, Redis, Caddy, PM2 and the Rust voice relay, generates every secret, runs the database migrations and creates your admin account. Unattended installs work too (--yes, --network=relay, --admin-password-file).
Once installed:
sudo nodyx-update # update to the latest version, database backed up first
sudo nodyx-doctor # check that every service is healthy
sudo nodyx-recover # get back into a lost admin accountComplete installation guide · Tunnel installation
| Layer | Technology |
|---|---|
| API | TypeScript, Fastify 5, Socket.IO (nodyx-core/) |
| Web app | SvelteKit 5, Tailwind 4, TipTap editor (nodyx-frontend/) |
| Data | PostgreSQL 16 with full-text search, Redis 7 for sessions and presence, 125 migrations applied automatically at startup |
| Voice | WebRTC peer to peer for small rooms, an SFU on your server for large ones and screen sharing |
| Network | nodyx-relay (home servers without open ports) and nodyx-turn (STUN/TURN), both in Rust (nodyx-p2p/) |
| Sign-in without password | Nodyx Signet, an ECDSA P-256 app (nodyx-authenticator/) |
| Process and proxy | PM2 under a dedicated nodyx user, Caddy with automatic HTTPS |
Repository layout
nodyx/
├── nodyx-core/ API, Socket.IO, database migrations
├── nodyx-frontend/ SvelteKit web app
├── nodyx-p2p/ Rust: relay and TURN server
├── nodyx-authenticator/ Nodyx Signet, passwordless sign-in
├── nodyx-docs/ nodyx.dev, the documentation site
├── nodyx-landing/ start.nodyx.org
├── docs/ Markdown documentation (EN, FR, ES)
├── install.sh installer (relay, own domain, sslip.io)
└── install_tunnel.sh installer behind Cloudflare Tunnel, Pangolin or your own tunnel
How instances find each other
Each instance can register in a shared directory and periodically share its public card: name, address, number of members. The /discover page of any instance searches the public threads and events of the others. There is no global account and no dependency on ActivityPub: the protocol is deliberately small, and an instance that leaves the directory keeps working exactly the same.
Nodyx was born on February 18, 2026 and has shipped twelve versions since: the forum, chat and voice foundation, end-to-end encrypted messages, the Homepage Builder and its extension marketplace, games in voice channels, the Streamer Hub, verified backups, the Rust SFU for voice and screen sharing. The next big step is making large voice rooms work from a home server too, so that no Nodyx admin ever has to open a port.
Changelog · Roadmap · Manifesto
Nodyx belongs to its community. Read CONTRIBUTING.md, browse the issues or start a discussion. Documentation and ideas (docs/, docs/ideas/) are open to everyone without asking first; changes to the core start with an issue.
Translate Nodyx. French and English are complete, Brazilian Portuguese is nearly there, and five more languages are under way. Pick yours on nodyx.org/translate, fill in the missing lines of one JSON file, open a pull request. The CI checks every placeholder, so a translation can't break the app.
Every outside contribution earns a star, and every star goes on our Hall of Fame with its story. Open source without recognition is just free labor, and that's not how we do things.
|
Pranto Goswamee 🌟 First contributor |
waazaa-fr 🌟🌟 Installer bugs |
naranco66 🌟🌟🌟 Spanish (es-ES) |
forke24x7 🌟🌟🌟🌟🌟 German (de) |
Lukáš Melega 🌟🌟 Docs search |
Every story, every contributor
Nodyx is built by one developer, with no investor and no strings attached. If it's useful to you, a star helps others find it, and Ko-fi helps pay for the servers.
AGPL-3.0. If you run a modified Nodyx for others, even over a network, your changes stay open. And if Nodyx ever betrays its principles, this license lets anyone fork it and carry on in the spirit of the Manifesto.
Born February 18, 2026.
"Fork us if we betray you."