Um app de chat descentralizado que funciona offline por uma rede mesh Bluetooth e, online, por relays Nostr, sem contas nem números de telefone.
exyte/Chat
Framework de interface de chat em SwiftUI para iOS, com células de mensagem personalizáveis, seletor de mídia integrado e suporte a texto, mídia, áudio, localização e documentos.
- Estrelas
- 1,893
- Forks
- 341
- Issues abertas
- 0
- Último commit
- há 20 dias
O que é?
Chat é um pacote Swift que oferece uma tela de chat pronta para apps em SwiftUI. Ele gerencia a lista de mensagens com paginação, a barra de entrada e o fluxo de envio, enquanto o app fica responsável pela rede e pelo armazenamento. Quando o usuário envia uma mensagem, a biblioteca chama um closure com um rascunho, e o app decide como entregá-la.
As células de mensagem e as views de entrada podem ser substituídas por builders personalizados em SwiftUI, e é possível combinar células personalizadas com o estilo padrão no mesmo chat. A biblioteca oferece respostas, edição e exclusão por meio de um menu de mensagem, menus de contexto acionados por toque longo e ações de deslizar. As mensagens podem conter texto estilizado ou markdown, fotos e vídeos, gravações de áudio, prévias de links, GIFs e stickers via Giphy, arquivos de qualquer tipo e localização estática ou em tempo real.
O projeto é compatível com iOS 17 e versões posteriores e é distribuído pelo Swift Package Manager. O README também inclui projetos de exemplo com Firestore e um bot simulado.
Recursos principais
- 01Lista de mensagens paginada com um closure de envio, deixando a comunicação com a rede a cargo do app
- 02Células de mensagem e views de entrada personalizadas por meio de view builders do SwiftUI
- 03Seletor integrado de fotos e vídeos, com seleção múltipla e acesso à câmera
- 04Responder, editar e excluir por meio de um menu padrão ou personalizado acionado por toque longo
- 05Suporte a texto, mídia, áudio, links com prévias, GIFs, documentos e localizações
Casos de uso
- Adicionar uma tela de mensagens no app para iOS feito em SwiftUI
- Criar uma interface de chat com balões personalizados sobre um backend que você já tem
- Enviar fotos, vídeos e arquivos em uma conversa sem criar um seletor do zero
- Oferecer compartilhamento de localização em tempo real entre usuários em um recurso de mensagens
Início rápido
- 1
Adicione o pacote pelo Swift Package Manager usando a URL do repositório
- 2
Importe ExyteChat e crie um ChatView com suas mensagens
Antes de usar
- Desenvolvido com SwiftUI, oferece suporte apenas ao iOS.
- O suporte ao CocoaPods foi descontinuado após a versão 2.4.2.
Tópicos
Perguntas frequentes
- O que é Chat?
- Framework de interface de chat em SwiftUI para iOS, com células de mensagem personalizáveis, seletor de mídia integrado e suporte a texto, mídia, áudio, localização e documentos. Chat é um pacote Swift que oferece uma tela de chat pronta para apps em SwiftUI. Ele gerencia a lista de mensagens com paginação, a barra de entrada e o fluxo de envio, enquanto o app fica responsável pela rede e pelo armazenamento. Quando o usuário envia uma mensagem, a biblioteca chama um closure com um rascunho, e o app decide como entregá-la.
- Chat é gratuito? Qual é a licença?
- Chat é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- Chat ainda é mantido?
- Manutenção ativa. O último commit de Chat foi em 1 de out. de 2026.
- Para que posso usar Chat?
- Adicionar uma tela de mensagens no app para iOS feito em SwiftUI Criar uma interface de chat com balões personalizados sobre um backend que você já tem Enviar fotos, vídeos e arquivos em uma conversa sem criar um seletor do zero Oferecer compartilhamento de localização em tempo real entre usuários em um recurso de mensagens
- Como instalar Chat?
- Adicione o pacote pelo Swift Package Manager usando a URL do repositório Importe ExyteChat e crie um ChatView com suas mensagens
- Onde consigo Chat?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/exyte/Chat
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Uma biblioteca Swift para criar apps nas plataformas Apple com gerenciamento de estado consistente, funcionalidades compostas, controle de efeitos colaterais e forte suporte a testes.
Um launcher de apps para iOS que executa apps IPA dentro dele, sem instalá-los, com vários contêineres por app.
Código-fonte oficial do app Telegram para iOS, com um sistema de build para compilá-lo no Xcode.
Integração do GitHub Copilot ao Xcode que adiciona preenchimento de código, chat, modo agente e revisão de código para projetos Swift e Objective-C.
Uma skill de agente que ensina assistentes de programação com IA, como Claude Code e Codex, a escrever código SwiftUI moderno e correto.