Chatto agora é código aberto
Posicionamento e objetivos
- Apresentado como uma alternativa ao Slack/Teams/Mattermost, com uma sensação semelhante à do Discord.
- O objetivo é ser agradável de usar, permitir auto-hospedagem e não ser “open-core” capado; todos os recursos estão disponíveis quando auto-hospedado.
- Foca em servidores single-tenant, por comunidade, em vez de grandes mega-instâncias federadas.
UX, desempenho e design
- Vários testadores elogiam que é muito rápido e ágil em comparação com Slack, clientes Matrix e outros.
- Design e UX são vistos como incomumente polidos para um app de chat de código aberto.
- Alguns criticam que é visualmente semelhante ao Slack/Discord e questionam se realmente resolve problemas de ruído/complexidade.
Arquitetura e implantação
- Backend em Go, frontend em Svelte; distribuído como um binário compacto e autocontido.
- Usa NATS com JetStream para mensagens e persistência; alguns devs relatam experiências positivas com NATS em escala.
- Usa LiveKit para voz/vídeo.
- A auto-hospedagem é relatada como simples; há exemplos para armazenamento compatível com S3 e outros componentes.
- Uso de recursos: dezenas de MB para uma instância nova; ~10 MB de RAM por usuário adicional conectado, com espaço para otimização.
Licenciamento e modelo de negócios
- O backend é AGPL; o frontend é Apache 2.0.
- Justificativa: a AGPL desencoraja clones proprietários hospedados, mantendo a UI personalizável e amigável para empresas.
- Está previsto um hosting comercial “Chatto Cloud”, mas a auto-hospedagem não tem restrições.
Clientes: PWA, desktop, mobile
- A experiência de PWA em primeiro plano é o foco atual, incluindo notificações push e voz/vídeo no mobile.
- Ainda não há apps nativos oficiais; existe um wrapper Tauri da comunidade, visto como pronto para desktop, mas não para mobile.
- Push no iOS via PWA/Web Push por enquanto; apps nativos com APNS/FCM estão planejados, mas não para já.
Segurança, privacidade e criptografia
- As conversas são criptografadas em repouso; as mensagens principais não são criptografadas de ponta a ponta.
- Alguns consideram a ausência de E2EE aceitável para ambientes controlados e auto-hospedados; outros querem E2EE para chat em grupo.
- Chaves por usuário e semântica de exclusão de conta levantam dúvidas sobre retenção legal e soft delete para uso empresarial.
Interoperabilidade e efeitos de rede
- Não há federação nem compatibilidade com Matrix/XMPP; uma escolha deliberada para manter o sistema simples e amigável para negócios.
- Alguns argumentam que isso prejudica a adoção por causa dos fortes efeitos de rede do Slack/Discord; outros dizem que comunidades privadas não precisam de federação.
- Está sendo explorada uma federação leve de identidade entre servidores Chatto.
Debate sobre desenvolvimento assistido por IA
- O projeto teria usado “agentic coding”/assistência de IA.
- Alguns ficam impressionados com a produtividade de um dev solo; outros se opõem fortemente por razões éticas e ambientais e dizem que evitarão o projeto.
- Contra-argumentos apontam modelos open-weight, reutilização histórica de IP e ganhos pessoais de produtividade; a discordância permanece sem resolução.
Comparações e alternativas
- Frequentemente comparado a Mattermost, Matrix, Zulip, Rocket.Chat, Fluxer e Discord.
- Vantagens citadas: configuração mais simples que Mattermost, mais polido e rápido que muitos clientes Matrix, licenciamento claro, SSO incluído sem empurrão para enterprise.
- Desvantagens/incertezas: sem E2EE para chats; sem migração/interop além de uma ferramenta de importação do Slack; lacuna de apps nativos mobile; sem tabelas claras de comparação de recursos.
Preocupações de adoção e lista de desejos
- Pedidos por: apps nativos para mobile/desktop, migração do Slack e sincronização contínua, salas públicas somente leitura, importação/exportação, salas de voz drop-in, autoatualizações, orientação de dimensionamento de recursos e melhor onboarding de novos servidores.
- Alguns usuários estão prontos para sair do Slack/Mattermost assim que houver clientes nativos e onboarding mais fluido.