Une conversation ne devrait rien demander à configurer
Réunir des amis pour un appel implique d'habitude de créer un serveur, d'organiser des canaux et de distribuer des rôles. Ici, tu crées un salon et tu envoies un lien.
Chatovo est un projet ouvert : le code, le serveur média et la base de données tournent sur tes propres machines, pas dans le cloud de quelqu'un d'autre.
Le projet est né d'une envie : retirer tout le cérémonial qui entoure une simple discussion.
Réunir des amis pour un appel implique d'habitude de créer un serveur, d'organiser des canaux et de distribuer des rôles. Ici, tu crées un salon et tu envoies un lien.
Le serveur média, la base de données et les fichiers envoyés, c'est toi qui les déploies. Pas d'outils d'analyse tiers, pas de stockage externe pour les pièces jointes.
Le code source, l'historique des versions et les discussions sont sur GitHub. Tu peux lire comment fonctionne chaque partie et monter ta propre copie.
Un monorepo en Bun workspaces : client, serveur, coque de bureau et schémas partagés au même endroit.
Next.js 16 et React 19, exporté en statique. Structuré selon Feature-Sliced Design, stylé avec des modules SCSS.
Tauri 2 : la même app web dans une coque native en Rust pour Windows, macOS, Linux et Android.
NestJS 11 sur Bun, avec Prisma au-dessus d'un Postgres auto-hébergé. L'authentification repose sur better-auth.
Un SFU LiveKit auto-hébergé pour le WebRTC. L'accès aux salons passe par un jeton signé par le serveur.
Les schémas Zod du paquet @chatovo/schemas sont la source unique de vérité pour les types du client et du serveur.
TypeScript partout, Vitest et Playwright pour les tests, la compilation et la publication via GitHub Actions.
Merci à toutes les personnes dont le code a rejoint le projet.
Le projet est ouvert aux changements, d'une coquille dans un texte à toute une nouvelle section de paramètres.
Forke le dépôt, crée une branche depuis master et ouvre une pull request. Le style de code et la structure sont documentés dans le dépôt.
Tu as trouvé un bug ou tu as une idée ? Ouvre un ticket. Les étapes pour reproduire le problème et la version de l'app accélèrent beaucoup le travail.
Le dépôt fournit la configuration de Caddy et de LiveKit pour que tu puisses monter ta propre instance complète.