Voltar para projetos

Milvus Widget

BibliotecaProjeto Interno

Widget flutuante personalizável para abertura de chamados via Milvus.

Meu Papel no Projeto

Cargo

Desenvolvedor

Período

Março 2024 - Presente

Resumo do Projeto

O Milvus Widget é um script JavaScript injetável que permite integrar rapidamente a ferramenta de suporte Milvus em qualquer aplicação web. Ele oferece um botão flutuante personalizável que, ao ser clicado, exibe um modal para abertura de chamados. Desenvolvido com foco em flexibilidade, o widget aceita parâmetros dinâmicos para adaptar cores, estilos e comportamento a qualquer identidade visual. Também permite que informações do usuário logado sejam pré-carregadas via comandos, proporcionando uma experiência simplificada para quem abre o chamado.

Este é um projeto interno por isso suas informações são limitadas. Para mais detalhes, entre em contato diretamente com a empresa responsável.

Minhas Contribuições

  • Desenvolvimento completo do widget em TypeScript com Next.js e Webpack
  • Criação de API JavaScript global que permite comandos personalizados via `window.milvus`
  • Implementação de sistema de fila local com retry para evitar perda de dados durante o carregamento
  • Sistema de rastreio do usuário logado com envio de nome, email e dados extras da aplicação cliente
  • Design e estrutura de botão flutuante personalizável via parâmetros dinâmicos (estilo, ícone, posição, cor, etc.)

Desafios e Soluções

Desafios

O maior desafio foi garantir que nenhuma informação enviada pela aplicação cliente fosse perdida caso o script do widget ainda estivesse carregando. Também foi essencial permitir personalizações visuais e funcionais para diferentes plataformas, sem exigir alteração no código-fonte do widget.

Soluções

Implementei um sistema de fila local baseada na `window` do navegador, onde comandos são enfileirados e processados com sistema de retry assim que o script estiver pronto. Essa abordagem garante confiabilidade e permite integração imediata sem impacto no tempo de carregamento da aplicação cliente. Além disso, a API do widget permite envio de informações do usuário logado para pré-preencher o formulário de chamados, otimizando a usabilidade.

Tecnologias e Ferramentas

Next
TypeScript
Webpack

Galeria de Imagens

Projeto Interno
Modal de Chamados
Visualização limitada

Modal de Chamados

Configurando o Widget
Visualização limitada

Configurando o Widget