111 lines
4.4 KiB
Markdown
111 lines
4.4 KiB
Markdown
---
|
|
title: Convos
|
|
created: 2026-06-07
|
|
updated: 2026-06-07
|
|
type: app
|
|
tags: [catalogue, messaging, irc, multiprotocole, perl, web-client, foss]
|
|
confidence: high
|
|
contested: false
|
|
sources: [https://selfh.st/apps/?tag=Messaging, https://github.com/convos-chat/convos, https://convos.chat/]
|
|
---
|
|
|
|
# 💬 Convos
|
|
|
|
> **Un client IRC moderne, dans le navigateur, multi-protocole** : Convos rend l'IRC (et IRC-over-WebSocket, XMPP, etc.) enfin accessible en restant connecté en permanence — plus de scripts irssi dans un coin de terminal, plus de déconnexions à gérer à la main.
|
|
|
|
## 📋 Informations Générales
|
|
|
|
| Champ | Valeur |
|
|
| :--- | :--- |
|
|
| **Site web** | [convos.chat](https://convos.chat/) |
|
|
| **GitHub** | [convos-chat/convos](https://github.com/convos-chat/convos) |
|
|
| **Licence** | Artistic-2.0 |
|
|
| **Langage** | Perl, JavaScript |
|
|
| **Étoiles GitHub** | 1.2k ⭐ |
|
|
| **Catégorie** | Messaging |
|
|
|
|
## 📝 Description
|
|
|
|
**Convos** est né d'une frustration : IRC est un protocole **excellent et fédéré**, mais les clients historiques (irssi, weechat, HexChat) demandent de l'investissement pour être utilisés confortablement au quotidien. Convos propose une **interface web moderne, persistante et multi-appareils** pour IRC et IRC-over-WebSocket, avec quelques extensions sympathiques.
|
|
|
|
Concrètement, Convos : **conserve l'historique des canaux** (même les messages envoyés pendant que vous étiez déconnecté), **multi-protocole** (IRC, IRC-over-WebSocket, et un pont XMPP en option), **multi-serveur** (se connecte simultanément à plusieurs réseaux IRC), **notifications** (mention, MP), **upload de fichiers** via un backend configurable, **chiffrement opportuniste** (certains plugins), **embed** d'images et vidéos.
|
|
|
|
L'application est écrite en **Perl Mojolicious** côté serveur, ce qui lui confère une **excellente performance** et un **faible coût en ressources** — parfait pour tourner sur un petit VPS. C'est l'outil idéal pour les **anciens d'IRC**, les **associations FOSS**, et tous ceux qui veulent un chat **sans vendor lock-in** ni dépendance cloud.
|
|
|
|
## 🚀 Installation
|
|
|
|
### Via Docker (recommandé)
|
|
|
|
```yaml
|
|
services:
|
|
convos:
|
|
image: convos/convos:latest
|
|
container_name: convos
|
|
restart: unless-stopped
|
|
ports: ["3000:3000"]
|
|
volumes:
|
|
- convos_data:/data
|
|
environment:
|
|
CONVOS_REVERSE_PROXY: 1
|
|
CONVOS_DEFAULT_HOMEPAGE: "Convos - My IRC Bouncer"
|
|
CONVOS_CONTACT: admin@example.com
|
|
|
|
# Optionnel : serveur IRC-over-WebSocket pour les pairs modernes
|
|
ircws:
|
|
image: inspircd/inspircd:latest
|
|
container_name: inspircd
|
|
restart: unless-stopped
|
|
ports:
|
|
- "6667:6667" # IRC classique
|
|
- "8080:8080" # WebSocket
|
|
|
|
volumes:
|
|
convos_data:
|
|
```
|
|
|
|
### Binaire Perl natif
|
|
|
|
```bash
|
|
cpanm ConvOS
|
|
convos daemon # démarre le service
|
|
```
|
|
|
|
## ⚙️ Configuration Initiale
|
|
|
|
1. **Créer le compte admin** via l'interface web au premier accès.
|
|
2. **Ajouter un ou plusieurs réseaux IRC** (Libera.Chat, OFTC, Freenode, votre serveur interne) avec identifiants.
|
|
3. **Configurer le reverse proxy** en HTTPS (Convos peut gérer le Let's Encrypt nativement).
|
|
4. **Tester la persistance** : déconnectez-vous, envoyez-vous un MP, reconnectez-vous — le message doit être là.
|
|
5. **Activer les notifications** (push web, e-mail) si besoin.
|
|
|
|
## 🔄 Alternatives
|
|
|
|
- **The Lounge** — Client IRC web plus minimal, comparable en ergonomie
|
|
- **KiwiIRC** — Web IRC populaire, plus simple mais moins de features
|
|
- **Weechat + Glowing Bear** — Client textuel + frontend web
|
|
- **Quassel** — Client IRC bouncer historique
|
|
- **Element / Matrix** — Plus moderne, mais pas IRC
|
|
|
|
## 🔐 Sécurité
|
|
|
|
- ✅ **Code auditable** (Artistic-2.0, Perl open-source)
|
|
- ✅ **Pas de télémétrie**, pas de tracking
|
|
- ✅ **Chiffrement TLS** pour les connexions IRC et web
|
|
- ⚠️ **IRC n'est pas chiffré E2E** : les opérateurs de serveur voient les messages. Pour un canal sensible, préférer Matrix ou XMPP+OMEMO
|
|
- ⚠️ **Authentification web** à durcir : 2FA recommandé, fail2ban sur l'admin
|
|
|
|
## 📚 Ressources
|
|
|
|
- [Site officiel](https://convos.chat/)
|
|
- [GitHub convos-chat/convos](https://github.com/convos-chat/convos)
|
|
- [Documentation](https://convos.chat/docs/)
|
|
- [Démo publique](https://convos.chat/)
|
|
|
|
## Pages Liées
|
|
|
|
- [[cat-messaging]] — Catégorie Messaging
|
|
- [[app-the-lounge]] — Autre client IRC web
|
|
- [[app-traefik]] — Reverse proxy HTTPS
|
|
- [[securisation-home-lab]] — Bonnes pratiques
|
|
- [[recettes-docker-compose]] — Patterns Compose
|