EN — Bullshark is a self-hosted, open-source voice and chat platform for gamers who believe their conversations belong to them — not to a corporation, not to a cloud, not to anyone else. You install it. You run it. You own it. Every message, every voice packet, every file lives on your machine and nowhere else.
FR — Bullshark c'est une plateforme de communication auto-hébergée et open source pour les gamers qui pensent que leurs conversations leur appartiennent — pas à une entreprise, pas à un cloud américain, pas à quiconque d'autre. Tu l'installes. Tu le fais tourner. Tu en es le seul maître. Chaque message, chaque paquet vocal, chaque fichier reste sur ta machine et nulle part ailleurs.
Bullshark is a gaming-focused fork of Sharkord, built and maintained by the community, for the community.
Bullshark est un fork orienté gaming de Sharkord, construit et maintenu par la communauté, pour la communauté.💙 Support the original creator of Sharkord: ko-fi.com/diogomartino
EN
When you use Discord, your conversations travel through servers you don't control, in a country you don't live in, owned by a company you can't audit. They can read it, sell insights from it, hand it over to authorities, shut down your server overnight, or simply change their terms whenever they feel like it.
With Bullshark, none of that exists. There are no "Bullshark servers". There is no company between you and your data. Your server runs on your hardware, in your country, under your rules. A VPS in your city, a machine in your living room, a Raspberry Pi under your desk — wherever you host it, that's where your data lives. Full stop.
FR
Quand tu utilises Discord, tes conversations transitent par des serveurs que tu ne contrôles pas, dans un pays où tu ne vis pas, appartenant à une entreprise que tu ne peux pas auditer. Ils peuvent les lire, en extraire des données, les transmettre aux autorités, fermer ton serveur du jour au lendemain, ou simplement changer leurs conditions quand ça leur chante.
Avec Bullshark, rien de tout ça n'existe. Il n'y a pas de "serveurs Bullshark". Il n'y a aucune entreprise entre toi et tes données. Ton serveur tourne sur ton matériel, dans ton pays, sous tes règles. Un VPS dans ta ville, une machine dans ton salon, un Raspberry Pi sous ton bureau — là où tu l'héberges, là sont tes données. Point final.
| Discord | TeamSpeak | Bullshark | |
|---|---|---|---|
| Self-hosted | ✗ | ✓ | ✓ |
| You choose where data lives | ✗ | ✓ | ✓ |
| Zero corporate visibility | ✗ | ✗ | ✓ |
| Subject to US Cloud Act | ✓ | ✓ | ✗ |
| No forced updates or TOS changes | ✗ | ✗ | ✓ |
| Can't be shut down externally | ✗ | ✗ | ✓ |
| Free forever, no Nitro | Nitro $$$ | ✓ | ✓ |
| Modern interface | ✓ | ✗ | ✓ |
| Voice + Video + Screen share | ✓ | partial | ✓ |
| Open source & auditable | ✗ | ✗ | ✓ MIT |
| Zero telemetry | ✗ | ✗ | ✓ |
| Gaming features (PTT, global hotkeys) | ✓ | partial | ✓ |
- Voice channels — low-latency WebRTC via Mediasoup
- Text chat — rich messages, reactions, file sharing
- Video & screen sharing — built-in, no plugins needed
- Push-to-Talk + Voice Activity Detection — configurable hotkeys
- Noise suppression — processed client-side, never leaves your machine
- Soundboard — inject sounds directly into voice channels (coming soon / à venir)
- Roles & permissions — per-channel, per-user granular control
- Zero telemetry — no analytics, no tracking, no phoning home
- Single binary — one file, runs anywhere: Linux, Windows, macOS, Docker
curl -L https://github.com/Neckript/bullshark/releases/latest/download/bullshark-linux-x64 -o bullshark
chmod +x bullshark
./bullsharkdocker run \
-p 4991:4991/tcp \
-p 40000:40000/tcp \
-p 40000:40000/udp \
-v ./data:/home/bun/.config/sharkord \
--name bullshark \
ghcr.io/neckript/bullshark:latestPuis ouvre http://localhost:4991 dans ton navigateur.
Then open http://localhost:4991 in your browser.
⚠️ On first launch, Bullshark prints an owner token in the console. This is your master key — store it securely. To use it: log in, open the browser DevTools Console (F12) and runawait useToken("THE_TOKEN")— see docs/server-administration.md.
⚠️ Au premier lancement, Bullshark affiche un token owner dans la console. C'est ta clé maître — garde-la précieusement. Pour l'utiliser : connecte-toi, ouvre la Console des DevTools (F12) et lanceawait useToken("LE_TOKEN")— voir docs/server-administration.md.
EN — Lost the owner token, or need to revoke it? Regenerate one with the
--new-owner-token flag (it prints a fresh token, invalidates the old one, and
exits without starting the server):
FR — Token owner perdu, ou besoin de le révoquer ? Régénères-en un avec le flag
--new-owner-token (il affiche un nouveau token, invalide l'ancien, et sort sans
démarrer le serveur) :
# Native binary / Binaire natif
./bullshark --new-owner-token
# Docker (replace "sharkord" with your container name — see `docker ps`)
# Docker (remplace "sharkord" par le nom de ton conteneur — voir `docker ps`)
docker exec -u bun -e HOME=/home/bun sharkord /sharkord --new-owner-token
⚠️ For a Dockerized server, always run it inside the container as above — do not runbun src/index.ts --new-owner-tokenfrom the source tree (it targets a different, dev database, not your container's).
⚠️ Pour un serveur Docker, lance-le toujours dans le conteneur comme ci-dessus — n'utilise pasbun src/index.ts --new-owner-tokendepuis les sources (ça vise une autre base, celle de dev, pas celle de ton conteneur).
See docs/server-administration.md for the full
owner-token lifecycle, the security model, and upgrade notes.
Voir docs/server-administration.md pour le cycle
de vie complet du token owner, le modèle de sécurité et les notes de mise à jour.
Bullshark is a gaming-focused fork. We diverge from upstream intentionally:
- Faster bug fixes on anything that impacts voice stability
- Gaming features outside Sharkord's scope: PTT, global hotkeys, soundboard, noise suppression, in-game overlay
- Bilingual documentation — French and English, because sovereignty is a European concern too
- No artificial scope restrictions — we build what gamers need
We sync selectively from upstream — core fixes yes, vision conflicts no.
- Fork established
-
fixAudio stability — voice freeze after 10s (#695 upstream) -
fixEmoji reactions on Firefox (#728 upstream) -
featGlobal mute/unmute hotkey — OS-level, configurable, via Bullshark Desktop (2026-07-03)
-
docsHTTPS guide — Caddy + OVH DNS (no Cloudflare dependency) -
docsHTTPS guide — Caddy + Hetzner DNS -
docsDeployment guides — OVH, Hetzner, Raspberry Pi, bare metal -
featReplace any remaining US-dependent defaults with EU-sovereign alternatives
-
featPush-to-Talk + VAD (configurable input modes, window-scoped PTT key) -
featClient-side noise suppression (RNNoise + noise gate worklets) -
featSoundboard -
featVoice channel grid UI -
featIn-game overlay
-
featRoles & permissions granular (per-channel, per-role) -
featThreads & discussion channels -
featServer backup — owner-only export/import (.zip) from the UI (2026-06-17) -
featPWA mobile optimized
-
releasev0.1.0 stable — first Bullshark release
EN — Open to contributions. Read CONTRIBUTING.md before opening a PR. Convention: feat(issue): description / fix(issue): description, always target development, issue first.
FR — Ouvert aux contributions. Lis CONTRIBUTING.md avant d'ouvrir une PR. Convention : feat(issue): description / fix(issue): description, toujours cibler development, issue en premier.
Sharkord · Bun · Mediasoup · tRPC · React · Drizzle ORM · ShadCN UI
MIT — see LICENSE
Original work © Sharkord contributors — Support the creator
Fork © 2025 Neckript/Bullshark contributors
Your server. Your data. Your sovereignty.
Ton serveur. Tes données. Ta souveraineté.