Sobre o projeto

HuLa é um sistema de mensagens instantâneas de código aberto. O front-end é construído com Tauri, Vite 7, Vue 3 e TypeScript, utilizando a capacidade de contêiner multiplataforma do Tauri para empacotar o mesmo código front-end em aplicativos para desktop e dispositivos móveis. O projeto oferece suporte em Windows 10/11, macOS 10.5+, Ubuntu 22.0+, iOS 9.0+ e Android 12+ (SDK30+). A versão web ainda não é suportada, sendo necessário remover manualmente os recursos relacionados ao desktop. Em termos de funcionalidades, o README lista uma lista de progresso de desenvolvimento bastante completa. A autenticação de usuário suporta login com conta e senha, login por leitura de código QR e gerenciamento de login em múltiplos dispositivos. A comunicação de mensagens cobre chat privado um a um, chat em grupo, retirada de mensagens, menções com @ e respostas, status de leitura, pacotes de figurinhas, menu de contexto de mensagens, cartões de visualização de links, interação de curtidas e gerenciamento de histórico. O gerenciamento social inclui adicionar, remover e pesquisar amigos, criação e gerenciamento de grupos, status online, distintivos de amigos, bloqueio, silenciamento e não perturbe, encaminhamento de mensagens, anúncios de grupo, gerenciamento de apelidos, envio de localização e entrada em grupos por leitura de código QR. A experiência de interface oferece design moderno, temas claro e escuro e troca de temas de skin. As funções do sistema incluem gerenciamento de múltiplas janelas, notificações na bandeja do sistema, visualizador de imagens, captura de tela, chamadas de voz, chamadas de vídeo, atalhos globais, visualizador de mídia independente, upload de arquivos baseado em Qiniu Cloud, sistema de atualização automática e suporte a internacionalização i18n com progresso de cerca de 98%. O projeto também integra um assistente de chat com IA e declara suporte a IA de múltiplas plataformas. Na pilha técnica, o Vite 7 é responsável pelo servidor de desenvolvimento e build de produção, a API de composição do Vue 3 e o sistema de tipos do TypeScript são usados para organizar a lógica da interface, UnoCSS e Sass lidam com estilos, e pnpm é o gerenciador de pacotes. O repositório também fornece o servidor complementar HuLa-Server e inclui documentação de configuração de ambiente e inicialização. O método de instalação é clonar o repositório e executar pnpm install, usar pnpm run tauri:dev para iniciar o desenvolvimento e pnpm run tauri:build para construir a versão de produção. Usuários de macOS que encontrarem o aviso de pacote de instalação danificado precisam permitir qualquer origem nas configurações do sistema ou remover o atributo de quarentena através do comando xattr. O projeto usa pnpm run commit como entrada para o padrão de commits. O README também inclui um aviso legal, afirmando que o software é fornecido como está, sem garantias de funcionalidade ou segurança, e que o desenvolvimento secundário deve cumprir as leis e regulamentos locais. O repositório fornece entradas para a comunidade, como site oficial, Discord, grupo WeChat e grupo QQ, e lista os patrocinadores.