Uma conversa não deveria exigir configuração
Reunir os amigos para uma chamada normalmente significa criar um servidor, organizar canais e distribuir cargos. Aqui você cria uma sala e manda um link.
O Chatovo é um projeto aberto: o código, o servidor de mídia e o banco de dados ficam nas suas próprias máquinas, e não na nuvem de outra empresa.
O projeto começou como uma tentativa de tirar a burocracia de conversar com as pessoas.
Reunir os amigos para uma chamada normalmente significa criar um servidor, organizar canais e distribuir cargos. Aqui você cria uma sala e manda um link.
O servidor de mídia, o banco de dados e os arquivos enviados: tudo isso é você quem implanta. Sem análises de terceiros, sem armazenamento externo para anexos.
O código-fonte, o histórico de versões e as discussões ficam no GitHub. Você pode ler como qualquer parte funciona e montar a sua própria cópia.
Um monorepo com Bun workspaces: cliente, servidor, shell para computador e schemas compartilhados num só lugar.
Next.js 16 e React 19, exportado de forma estática. Estruturado com Feature-Sliced Design e estilizado com módulos SCSS.
Tauri 2: o mesmo app web dentro de um shell nativo em Rust para Windows, macOS, Linux e Android.
NestJS 11 no Bun, com Prisma sobre um Postgres próprio. A autenticação roda com better-auth.
Um SFU LiveKit próprio para WebRTC. O acesso à sala é concedido por um token assinado pelo servidor.
Os schemas Zod do pacote @chatovo/schemas são a fonte única de verdade para os tipos do cliente e do servidor.
TypeScript em tudo, Vitest e Playwright para os testes, builds e lançamentos pelo GitHub Actions.
Obrigado a todos cujo código entrou no projeto.
O projeto está aberto a mudanças, de um erro de digitação num texto a uma seção de configurações inteira nova.
Faça um fork do repositório, crie um branch a partir do master e abra um pull request. O estilo e a estrutura do código estão documentados no repositório.
Achou um bug ou tem uma ideia? Abra uma issue. Os passos para reproduzir e a versão do app agilizam muito o trabalho.
O repositório inclui a configuração do Caddy e do LiveKit para você subir uma instância completa só sua.