Files
wiki/Catalogue-Self-Hosted/apps/app-positive-intentions-chat.md
T
2026-06-09 18:40:21 +02:00

4.5 KiB


title: Positive Intentions Chat created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, messaging, anonyme, minimaliste, foss, pwa, web] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Messaging, https://github.com/positive-intentions/chat]

💬 Positive Intentions Chat

Un chat anonyme et minimaliste dans le navigateur : Positive Intentions Chat mise sur l'absence d'inscription, la simplicité d'usage et la confidentialité par défaut. Pas de compte, pas de mail, pas de tracking — juste un salon à partager.

📋 Informations Générales

Champ Valeur
Site web positive-intentions.com
GitHub positive-intentions/chat
Licence MIT
Langage JavaScript, TypeScript
Étoiles GitHub 325
Catégorie Messaging

📝 Description

Positive Intentions Chat fait partie d'une suite plus large (Positive Intentions) qui inclut aussi partage de fichiers, notes chiffrées, et un agenda — tous construits sur la même philosophie : technologies web standards, zéro tracking, zéro inscription, chiffrement par défaut. Le module Chat est le plus mature de la suite.

L'approche est volontairement minimaliste : on ouvre l'URL, on choisit un pseudonyme (éphémère, non enregistré), on rejoint un salon ou en crée un, on partage le lien. Aucun backend central n'est requis pour l'usage standard : la communication passe par WebRTC entre pairs, avec un serveur de signaling minimal (configurable et auto-hébergeable).

Cas d'usage typiques : conversations ponctuelles entre amis, support communautaire éphémère, channel de coordination pour un projet à durée limitée. Pour un usage long terme avec historique persistant, il faut s'orienter vers Matrix ou Rocket.Chat. Pour un chat rapide, jetable et sans friction, c'est exactement la bonne taille.

🚀 Installation

Via Docker (recommandé)

services:
  chat-signaling:
    image: ghcr.io/positive-intentions/chat-signaling:latest
    container_name: pi-chat-signaling
    restart: unless-stopped
    ports: ["3000:3000"]
    environment:
      NODE_ENV: production
      PUBLIC_URL: https://chat.example.com

  chat-app:
    image: ghcr.io/positive-intentions/chat:latest
    container_name: pi-chat-app
    restart: unless-stopped
    ports: ["8080:8080"]
    depends_on: [chat-signaling]

Build statique

git clone https://github.com/positive-intentions/chat
cd chat
npm install
npm run build
# Servir dist/ avec n'importe quel serveur web (Nginx, Caddy)

Utilisation directe (le plus simple)

Aller sur positive-intentions.com/chat, créer un salon, partager l'URL.

⚙️ Configuration Initiale

  1. Déployer le serveur de signaling (Docker) — c'est l'unique composant serveur persistant.
  2. Configurer HTTPS (obligatoire pour WebRTC).
  3. Changer le pseudonyme par défaut si vous voulez une identité reconnaissable.
  4. Tester un salon à 2 pairs sur des réseaux différents (NAT traversal).
  5. Configurer un TURN server si des pairs sont derrière des NAT très stricts.

🔄 Alternatives

  • Chitchatter — Approche P2P similaire, plus mature
  • Briar — P2P via Tor/Bluetooth, plus pour mobile Android
  • Tox — P2P desktop, chiffrement E2E
  • SimpleX Chat — P2P avec serveurs de files chiffrés
  • Matrix / Element — Pour persistance et fédération

🔐 Sécurité

  • Pas d'inscription, pas d'identité persistante : la privacy est l'état par défaut
  • Chiffrement E2E sur les canaux WebRTC
  • Open-source (MIT), code auditable
  • ⚠️ Pas d'historique persistant : si personne n'est en ligne, les messages disparaissent
  • ⚠️ Anonymat ≠ protection : l'absence d'auth peut faciliter l'usurpation de pseudonyme (à utiliser pour des contextes de confiance)

📚 Ressources

Pages Liées