Aplicativo Web de Comunicação (Chat)
Budget: $250 – $750 USD
Criar um sistema completo de mensagens, similar a mensageiros como WhatsApp ou Telegram, com foco em funcionar 100% no navegador, sem necessidade de instalação, mas com experiência fluida também em celulares.
Funcionalidades obrigatórias
Login do usuário realizado por outra plataforma (SSO/autenticação externa), ou seja, você apenas precisa consumir a sessão já autenticada.
Existe uma lista de contatos consumida via API minha já existente.
Mensagens privadas e em grupo
Enviar e receber mensagens de texto 1x1 (entre dois usuários).
Enviar e receber mensagens em grupos e canais.
Enviar e visualizar imagens.
Enviar e visualizar arquivos (PDF, DOCX, ZIP, etc.).
Gravar mensagens de voz com o microfone e enviá-las como áudio.
Ouvir mensagens de voz com player embutido.
Suporte a emojis no texto, com teclado e renderização correta.
Suporte a stickers (pacotes fixos inicialmente) e GIFs animados.
Responder a mensagens específicas (citação).
Encaminhar mensagens para outras conversas.
Editar e/ou excluir mensagens já enviadas.
Marcar mensagens como favoritas.
Marcação visual de mensagens: enviadas, entregues, lidas.
Pesquisa por mensagens (por palavra-chave, contato ou data).
Grupos e canais
Criar grupos com nome, descrição e imagem.
Adicionar e remover participantes.
Promover e rebaixar administradores.
Configurar quem pode enviar mensagens (todos ou só admins).
Gerar link de convite para grupos ou canais.
Limite configurável de participantes.
Status e presença
Indicar usuários online/offline.
Mostrar “digitando...” ou “gravando áudio”.
Exibir última vez visto.
Notificações
Notificações em tempo real para novas mensagens (desktop e mobile).
Opção para silenciar notificações por conversa ou globalmente.
Configurações e privacidade
Editar nome, foto de perfil e status (“Disponível”, “Ocupado” etc.).
Configurar quem pode ver foto, último visto e status.
Bloquear/desbloquear contatos.
Tema claro/escuro.
Configurações gerais e individuais de notificações.
Offline-first
Ler mensagens já sincronizadas mesmo sem conexão.
Armazenar mensagens para envio posterior assim que a conexão voltar.
Indicar mensagens pendentes.
Plataformas
Deve funcionar 100% no navegador, com design responsivo e experiência fluida em celulares e tablets (mobile-first).
Não é necessário app nativo para Android/iOS.
Requisitos técnicos
Frontend em React.js, com atenção a UX responsiva.
Backend em Go/Qaurkus Kotlin com API para atender às funcionalidades.
Banco de dados a ser proposto, com suporte a cache local para offline-first.
Notificações em tempo real via WebSockets ou tecnologia equivalente.
Entregáveis
Código-fonte completo (frontend e backend).
Documentação de instalação, configuração e uso.
Funcionalidades obrigatórias
Login do usuário realizado por outra plataforma (SSO/autenticação externa), ou seja, você apenas precisa consumir a sessão já autenticada.
Existe uma lista de contatos consumida via API minha já existente.
Mensagens privadas e em grupo
Enviar e receber mensagens de texto 1x1 (entre dois usuários).
Enviar e receber mensagens em grupos e canais.
Enviar e visualizar imagens.
Enviar e visualizar arquivos (PDF, DOCX, ZIP, etc.).
Gravar mensagens de voz com o microfone e enviá-las como áudio.
Ouvir mensagens de voz com player embutido.
Suporte a emojis no texto, com teclado e renderização correta.
Suporte a stickers (pacotes fixos inicialmente) e GIFs animados.
Responder a mensagens específicas (citação).
Encaminhar mensagens para outras conversas.
Editar e/ou excluir mensagens já enviadas.
Marcar mensagens como favoritas.
Marcação visual de mensagens: enviadas, entregues, lidas.
Pesquisa por mensagens (por palavra-chave, contato ou data).
Grupos e canais
Criar grupos com nome, descrição e imagem.
Adicionar e remover participantes.
Promover e rebaixar administradores.
Configurar quem pode enviar mensagens (todos ou só admins).
Gerar link de convite para grupos ou canais.
Limite configurável de participantes.
Status e presença
Indicar usuários online/offline.
Mostrar “digitando...” ou “gravando áudio”.
Exibir última vez visto.
Notificações
Notificações em tempo real para novas mensagens (desktop e mobile).
Opção para silenciar notificações por conversa ou globalmente.
Configurações e privacidade
Editar nome, foto de perfil e status (“Disponível”, “Ocupado” etc.).
Configurar quem pode ver foto, último visto e status.
Bloquear/desbloquear contatos.
Tema claro/escuro.
Configurações gerais e individuais de notificações.
Offline-first
Ler mensagens já sincronizadas mesmo sem conexão.
Armazenar mensagens para envio posterior assim que a conexão voltar.
Indicar mensagens pendentes.
Plataformas
Deve funcionar 100% no navegador, com design responsivo e experiência fluida em celulares e tablets (mobile-first).
Não é necessário app nativo para Android/iOS.
Requisitos técnicos
Frontend em React.js, com atenção a UX responsiva.
Backend em Go/Qaurkus Kotlin com API para atender às funcionalidades.
Banco de dados a ser proposto, com suporte a cache local para offline-first.
Notificações em tempo real via WebSockets ou tecnologia equivalente.
Entregáveis
Código-fonte completo (frontend e backend).
Documentação de instalação, configuração e uso.
Related categories:
Business, Accounting, Human Resources & Legal
Golang
HTML5
React.js
Kotlin
Web Development