Repolode
yshmarov

yshmarov/livechat

Chat ao vivo self-hosted para apps Rails: widget de suporte e caixa de entrada da equipe, com conversas armazenadas no seu próprio banco de dados.

Alternativa open source a:IntercomCrisp

Estrelas
66
Forks
2
Issues abertas
2
Último commit
há 10 dias

O que é?

livechat é uma gem Ruby que adiciona mensagens de suporte dentro de um aplicativo Rails. Um balão de chat permite que visitantes façam perguntas na própria página em que encontraram um problema, e a equipe responde pela caixa de entrada montada em /livechat. Conversas, mensagens e anexos ficam armazenados no banco de dados do app hospedeiro, sem envolver serviços de terceiros ou scripts externos.

A gem funciona com Rails 7.1 ou posterior e usa polling por padrão para atualizar as conversas em tempo real, sem precisar de Redis nem Action Cable. É possível ativar o push via Action Cable como opção. Autorização, identificação de visitantes e hooks de notificação são configurados com lambdas que recebem a requisição bruta, então funcionam com Devise, a autenticação integrada do Rails 8 ou sessões personalizadas. Também há suporte a notificações por e-mail nos dois sentidos, anexos de arquivos via Active Storage e um script de incorporação para sites estáticos na mesma origem.

A caixa de entrada é compartilhada: qualquer agente autorizado pode ler e responder a qualquer conversa, e a gem não oferece caixas de entrada isoladas por tenant. Ela também não inclui bots de IA, respostas predefinidas nem canais como WhatsApp.

Recursos principais

  • 01Widget de balão de chat que visitantes podem abrir em qualquer página, com indicadores de mensagens não lidas e rascunhos preservados.
  • 02Caixa de entrada da equipe com filtros de conversas abertas e resolvidas, busca e identificação do autor de cada resposta.
  • 03Atualizações em tempo real via polling por padrão, com opção de push pelo Action Cable.
  • 04Notificações por e-mail nos dois sentidos, agrupadas por período contínuo de mensagens não lidas.
  • 05Anexos de arquivos via Active Storage, servidos pelo engine com controle de acesso.
  • 06Autorização, identidade de visitantes e hooks configuráveis, como notificações no Slack.

Casos de uso

  • Responder a dúvidas sobre cobrança, onboarding ou contas dentro de um app SaaS.
  • Permitir que clientes perguntem sobre pedidos, faturas ou reservas por um portal do cliente.
  • Oferecer aos usuários internos da área administrativa um canal direto com a equipe de suporte pelas telas de administração.
  • Adicionar botões de suporte contextual que preenchem o chat com o pedido ou registro atual.

Início rápido

  1. 1

    Adicione a gem ao seu Gemfile

  2. 2

    Instale o bundle

    bundle install
  3. 3

    Execute o gerador do instalador

    bin/rails generate livechat:install
  4. 4

    Execute as migrações do banco de dados

    bin/rails db:migrate

Antes de usar

  • Funciona apenas com aplicativos Ruby on Rails (Ruby >= 3.2, Rails >= 7.1, < 9).
  • Por padrão, a caixa de entrada só fica habilitada no ambiente de desenvolvimento, então você precisa configurar authorize_agent antes de fazer o deploy.

Em coleções

Tópicos

#ruby-on-rails#live-chat#customer-support#rails-engine#self-hosted#chat-widget#chatwoot-alternative#crisp-alternative#intercom-alternative#livechat

Perguntas frequentes

O que é livechat?
Chat ao vivo self-hosted para apps Rails: widget de suporte e caixa de entrada da equipe, com conversas armazenadas no seu próprio banco de dados. livechat é uma gem Ruby que adiciona mensagens de suporte dentro de um aplicativo Rails. Um balão de chat permite que visitantes façam perguntas na própria página em que encontraram um problema, e a equipe responde pela caixa de entrada montada em /livechat. Conversas, mensagens e anexos ficam armazenados no banco de dados do app hospedeiro, sem envolver serviços de terceiros ou scripts externos.
livechat é gratuito? Qual é a licença?
livechat é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
livechat ainda é mantido?
Manutenção ativa. O último commit de livechat foi em 27 de out. de 2026.
Para que posso usar livechat?
Responder a dúvidas sobre cobrança, onboarding ou contas dentro de um app SaaS. Permitir que clientes perguntem sobre pedidos, faturas ou reservas por um portal do cliente. Oferecer aos usuários internos da área administrativa um canal direto com a equipe de suporte pelas telas de administração. Adicionar botões de suporte contextual que preenchem o chat com o pedido ou registro atual.
Como instalar livechat?
Adicione a gem ao seu Gemfile Instale o bundle: bundle install Execute o gerador do instalador: bin/rails generate livechat:install Execute as migrações do banco de dados: bin/rails db:migrate
Onde consigo livechat?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/yshmarov/livechat

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados