--- title: Spacebar created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, messaging, discord-alternative, typescript, nodejs, foss, self-hosted] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Messaging, https://github.com/spacebarchat/server, https://spacebar.chat/] --- # 💬 Spacebar > **Un backend open source compatible avec le protocole Discord** : il accepte les clients officiels Discord et les clients tiers, tout en restant 100 % auto-hébergeable et modifiable. ## 📋 Informations Générales | Champ | Valeur | | :--- | :--- | | **Site web** | [spacebar.chat](https://spacebar.chat/) | | **GitHub** | [spacebarchat/server](https://github.com/spacebarchat/server) | | **Licence** | AGPL-3.0 | | **Langage** | TypeScript, Node.js | | **Étoiles GitHub** | 6.7k ⭐ | | **Catégorie** | Messaging | ## 📝 Description **Spacebar** est un **serveur compatible avec l'API Discord** : il implémente une grande partie de la passerelle (Gateway) et de l'API REST de Discord, ce qui permet aux utilisateurs de se connecter avec le **client Discord officiel** (en modifiant un paramètre DNS) ou avec un **client tiers** (Equibop, Vesktop, etc.) vers leur propre instance. L'objectif du projet est de fournir une **alternative open source à Discord** que n'importe qui peut héberger, auditer et modifier, sans dépendre de l'infrastructure de Discord. C'est la même philosophie que **Revolt**, **Fluxer** ou **Guilded**, mais avec une orientation forte vers la **compatibilité API Discord** plutôt que vers un client propriétaire. Techniquement, le serveur est en **TypeScript** avec Node.js, stocke les données dans **PostgreSQL** ou **SQLite**, et supporte **Redis** pour le cache. Il gère channels, rôles, permissions, messages, pièces jointes, et de plus en plus de fonctions temps réel. Le projet est jeune mais très actif. ## 🚀 Installation ### Option recommandée : Docker ```yaml services: spacebar: image: ghcr.io/spacebarchat/server:latest container_name: spacebar restart: unless-stopped ports: - "3001:3001" environment: DATABASE_URL: postgres://spacebar:***@db:5432/spacebar REDIS_URL: redis://redis:6379 ENDPOINT: https://spacebar.example.com/api CDN: https://cdn.example.com SPACE_PORT: 3001 depends_on: - db - redis db: image: postgres:16 restart: unless-stopped environment: POSTGRES_DB: spacebar POSTGRES_USER: spacebar POSTGRES_PASSWORD: change-me volumes: - spacebar_db:/var/lib/postgresql/data redis: image: redis:7-alpine restart: unless-stopped volumes: spacebar_db: ``` ### Connexion avec le client Discord officiel Pour pointer le client Discord officiel vers l'instance Spacebar, ajouter dans `/etc/hosts` (ou DNS) : ``` IP_DU_SERVEUR gateway.discord.gg ``` ## ⚙️ Configuration Initiale 1. **Créer l'instance** et noter l'URL publique. 2. **Créer le premier utilisateur** via l'API ou un client tiers compatible. 3. **Activer HTTPS** (Traefik ou Caddy) sur le domaine. 4. **Configurer le stockage** des fichiers (CDN local ou S3 compatible). 5. **Tester la Gateway** avec un client compatible (Equibop, Vesktop modifié). ## 🔄 Alternatives - [[app-fluxer]] — Concurrent, codé en Rust - **Revolt** — Concurrent, modèle plus mur - **Guilded** — Concurrent, propriété de Roblox - [[app-rocket-chat]] — Plateforme plus généraliste - **Discord** — Référence fermée ## 🔐 Sécurité - ⚠️ **Comptes Discord réels** : ne pas utiliser ses identifiants Discord personnels, créer un compte local sur l'instance - ✅ Support de l'authentification par email et 2FA - ⚠️ HTTPS obligatoire pour la Gateway - ⚠️ Bien configurer le rate-limiting de l'API ## 📚 Ressources - [Site officiel](https://spacebar.chat/) - [GitHub spacebarchat/server](https://github.com/spacebarchat/server) - [Documentation](https://docs.spacebar.chat/) - [Clients compatibles](https://github.com/spacebarchat/wiki) ## Pages Liées - [[cat-messaging]] — Catégorie Messaging - [[app-fluxer]] — Concurrent, même cible - [[app-rocket-chat]] — Plateforme plus généraliste - [[app-traefik]] — Reverse proxy HTTPS - [[recettes-docker-compose]] — Stack Compose