--- title: Colanode created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, wiki, collaboration, crdt, local-first, typescript, postgres, redis, docker] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Wiki, https://github.com/colanode/colanode, https://colanode.com/] --- # 🤝 Colanode > **Workspace collaboratif open source et local-first** : un concurrent self-hosted à Notion + Slack combinant pages wiki, bases de données, chat en temps réel et gestion de fichiers dans une seule application. ## 📋 Informations Générales | Champ | Valeur | | :--- | :--- | | **Site web** | [colanode.com](https://colanode.com/) | | **GitHub** | [colanode/colanode](https://github.com/colanode/colanode) | | **Licence** | Apache-2.0 | | **Langage** | TypeScript | | **Étoiles GitHub** | 4.9k ⭐ | | **Dernière MAJ** | 2026-04-03 (v0.4.7) | | **Catégorie** | [[cat-wiki]] | ## 📝 Description **Colanode** est une plateforme de collaboration **tout-en-un** qui réunit dans une seule application ce que d'autres éditeurs découpent en plusieurs produits : un wiki structuré façon Notion, des bases de données personnalisables, un chat temps réel et un gestionnaire de fichiers. Le projet se distingue par son approche **local-first** : toutes les modifications sont d'abord sauvegardées dans une base SQLite locale, puis synchronisées avec le serveur en arrière-plan, ce qui permet de continuer à travailler même hors ligne. La collaboration multi-utilisateur repose sur des **CRDT (Conflict-free Replicated Data Types)** propulsés par [Yjs](https://docs.yjs.dev/), ce qui garantit que plusieurs personnes peuvent éditer simultanément une page ou un enregistrement de base de données sans conflit, avec fusion automatique des changements. Les messages de chat et les opérations sur fichiers, eux, n'ont pas besoin de CRDT et utilisent des tables PostgreSQL classiques. Côté backend, Colanode supporte plusieurs backends de stockage (filesystem local par défaut, S3, Google Cloud Storage, Azure Blob) et s'appuie sur **PostgreSQL avec l'extension pgvector** plus **Redis** (ou Valkey) pour la coordination. L'application se destine aux équipes qui veulent **regrouper leurs outils** (docs + chat + tâches + fichiers) sans dépendre d'un SaaS propriétaire. C'est un choix pertinent pour des PME, des associations ou des collectifs qui cherchent une alternative self-hosted à Notion + Slack, avec une philosophie open source assumée (Apache 2.0). Le revers de la médaille : le projet est encore jeune (v0.4.x) et l'écosystème de plugins/extensions reste limité. ## 🚀 Installation ### Option recommandée : Docker Compose Le dépôt officiel fournit un `docker-compose.yaml` complet dans `hosting/docker/` qui démarre Postgres + Redis + le serveur Colanode, avec un profil optionnel pour MinIO (stockage S3-compatible). ```yaml # docker-compose.yml services: postgres: image: postgres:16-alpine container_name: colanode-postgres restart: unless-stopped environment: POSTGRES_USER: colanode POSTGRES_PASSWORD: change-me-strong-password POSTGRES_DB: colanode volumes: - colanode-pg:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U colanode"] interval: 10s timeout: 5s retries: 5 redis: image: redis:7-alpine container_name: colanode-redis restart: unless-stopped command: ["redis-server", "--appendonly", "yes"] volumes: - colanode-redis:/data storage: image: minio/minio:latest container_name: colanode-minio restart: unless-stopped command: ["server", "/data", "--console-address", ":9001"] environment: MINIO_ROOT_USER: colanode MINIO_ROOT_PASSWORD: change-me-strong-secret volumes: - colanode-minio:/data profiles: ["s3"] server: image: ghcr.io/colanode/colanode-server:latest container_name: colanode-server restart: unless-stopped depends_on: postgres: condition: service_healthy redis: condition: service_started environment: POSTGRES_URL: postgresql://colanode:change-me-strong-password@postgres:5432/colanode REDIS_URL: redis://redis:6379 STORAGE_TYPE: local COLANODE_JWT_SECRET: change-me-long-random-secret volumes: - colanode-data:/app/data - ./config.json:/app/config.json:ro ports: - "3000:3000" volumes: colanode-pg: colanode-redis: colanode-minio: colanode-data: ``` > Pour activer MinIO, lance avec `docker compose --profile s3 up -d` et règle `STORAGE_TYPE=s3` avec les credentials MinIO dans `config.json`. ### Option 2 : Kubernetes (Helm) Le dépôt officiel fournit un chart Helm : ```bash git clone https://github.com/colanode/colanode.git cd colanode/hosting/kubernetes helm install colanode ./chart \ --set-file colanode.configFile.data=./config.json ``` ### Option 3 : Cloud géré Pour évaluer rapidement, [app.colanode.com](https://app.colanode.com/) propose une instance d'aperçu, et **Colanode Cloud** (EU/US) est en bêta. ## ⚙️ Configuration - **`config.json`** : fichier de configuration unique, mounté dans le conteneur. Contient les paramètres de stockage, l'URL publique, les origines CORS autorisées, etc. - **`env://VAR_NAME`** : dans le `config.json`, on peut référencer des variables d'environnement pour les secrets — le loader les résout au démarrage. - **`POSTGRES_URL`** et **`REDIS_URL`** : seules deux variables strictement obligatoires hors `config.json`. - **Stockage** : `STORAGE_TYPE` accepte `local`, `s3`, `gcs`, `azure`. - **Auth** : JWT géré côté serveur ; pour activer un IdP externe (OIDC, LDAP), voir la documentation. - **Premier compte** : le premier utilisateur enregistré devient automatiquement administrateur. ## 🔄 Alternatives ### Open Source - [[app-outline]] — Wiki d'équipe moderne en TypeScript, plus mature - [[app-affine]] — Workspace Notion-like open source, sans chat - [[app-appflowy]] — Alternative Notion en Dart/Rust - [[app-trilium-notes]] — PKM personnel hiérarchique, pas d'équipe - [[app-xwiki]] — Wiki d'entreprise Java, beaucoup plus lourd - **Docmost** — Wiki collaboratif Confluence-like, plus simple ### Propriétaires - **Notion** — Cible directe, même positionnement - **Slack + Notion** — Combinaison que Colanode cherche à remplacer - **Microsoft Loop** — Approche concurrente de Microsoft 365 - **ClickUp** — Tout-en-un propriétaire avec wiki intégré ## 🔐 Sécurité - ✅ Authentification par **JWT**, premier compte = admin (à verrouiller rapidement). - ✅ Chiffrement des données en transit via **HTTPS obligatoire** (reverse proxy). - ✅ Stockage local des secrets via `env://` : pas dans le `config.json` committé. - ⚠️ L'extension **pgvector** est requise sur Postgres : vérifier la compatibilité avec vos sauvegardes. - ⚠️ Les CRDT impliquent une réconciliation automatique ; auditer les permissions sur les espaces. - ✅ Activer les **backups PostgreSQL** (pg_dump / WAL-G) + backup du dossier de stockage. - ✅ Mettre à jour régulièrement : v0.4.x évolue vite, des correctifs de sécurité sortent fréquemment. - ⚠️ Le mode local-first signifie que les clients gardent une copie de données sensibles : durcir les postes clients. ## 📚 Ressources - [Site officiel Colanode](https://colanode.com/) - [Dépôt GitHub colanode/colanode](https://github.com/colanode/colanode) - [Documentation self-hosting](https://github.com/colanode/colanode/blob/main/hosting/docker/README.md) - [Démo en ligne app.colanode.com](https://app.colanode.com/) - [Reddit — retour d'expérience self-hoster](https://www.reddit.com/r/selfhosted/comments/1khpftl/i_built_colanode_an_opensource_localfirst_slack/) ## Pages Liées - [[cat-wiki]] — Vue d'ensemble de la catégorie Wiki - [[app-outline]] — Alternative plus mature pour wiki d'équipe - [[app-affine]] — Workspace open source concurrent - [[app-trilium-notes]] — PKM personnel, autre vision local-first - [[recettes-docker-compose]] — Templates Docker Compose - [[securisation-home-lab]] — Bonnes pratiques de sécurité