Skip to content

v0.4.0

Latest

Choose a tag to compare

@natorjunior natorjunior released this 29 Nov 16:44
4ae8f86

InfoSuplementos — Descrição da Versão (Nov/2025)

Esta versão entrega uma atualização ampla no backend e na infraestrutura de banco de dados do InfoSuplementos. As mudanças priorizam consistência de codificação (utf8mb4), enriquecimento das operações de produtos e mídia, novas funcionalidades de perfil e autenticação, melhorias de confiabilidade/escala via pooling e healthcheck, além da integração de um assistente virtual usando Google Gemini AI.


✨ Principais entregas

  • Padronização total do banco em utf8mb4, evitando problemas de caracteres especiais.
  • Gestão completa de produtos para admin, incluindo CRUD e vínculo com imagens.
  • Imagens genéricas em lote para Whey Protein e Creatina.
  • Busca, favoritos e destaques agora retornam imagens junto aos produtos.
  • Perfil do usuário: visualizar e atualizar nome/senha.
  • Camada middleware de autorização admin.
  • Assistente virtual de IA com Google Gemini.
  • Melhorias de infraestrutura (healthcheck MySQL + connection pooling).

🗄️ Banco de dados & padronização de encoding

  • Tabelas principais agora explicitam utf8mb4 e collation adequadas:
    • usuarios
    • suplementos
    • favoritos
    • midias
  • Conexões e inserts configurados para usar sempre utf8mb4, garantindo consistência ponta-a-ponta.

Impacto:

  • maior integridade de dados
  • suporte correto a emojis/acentos/caracteres especiais
  • eliminação de bugs de charset em listagens/detalhes

🧴 Produtos & Mídias (Admin e usuário)

CRUD para administradores

  • Controllers adicionados para:
    • criar produto
    • editar produto
    • deletar produto
  • Tratamento completo das imagens associadas usando a tabela midias.

Inserções em lote de imagens

  • Bulk inserts adicionam imagens genéricas para:
    • Whey Proteins
    • Creatinas
      Melhorando apresentação inicial dos itens.

Retorno com imagens em endpoints

  • Ajuste de endpoints para incluir imagem nos fluxos:
    • busca de produtos
    • listagem de favoritos
  • Novo endpoint de destaques randômicos para homepage.

Resultado:

  • catálogo mais rico visualmente
  • experiência de navegação mais atrativa

👤 Perfil do usuário & autenticação

  • Novos endpoints para:
    • visualizar perfil
    • atualizar nome
    • atualizar senha
  • Fluxo correto de:
    • validação de sessão
    • hashing de senha
  • Middleware introduzido para restringir ações exclusivas de admin.
  • Novo usuário administrador inserido para bootstrap/testes.

🤖 Integração do Chatbot (Google Gemini AI)

  • Assistente virtual integrado via pacote @google/generative-ai.
  • Novo endpoint de chat com:
    • contexto da empresa/projeto
    • respostas amigáveis e orientadas ao usuário
  • Estrutura preparada para evoluir FAQs e suporte inteligente.

🧱 Infraestrutura, escala & confiabilidade

  • docker-compose.yml com healthcheck MySQL aprimorado:
    • sobe containers de forma mais estável
    • evita race conditions na inicialização
  • Backend Node.js passou a usar connection pooling:
    • melhora performance sob carga
    • reduz falhas por excesso de conexões
    • aumenta confiabilidade do serviço

🧪 Correções e incrementos incluídos na linha do tempo

  • Políticas de privacidade e destaques randômicos.
  • Correções na conexão com banco (connection.js) e selects de destaques.
  • Ajustes de UI/Front:
    • página de resultados
    • correções de imagem
    • página de perfil
    • área de admin (back + front)
  • Correção de bugs:
    • listar favoritos
    • ver detalhes
    • charset em detalhes
    • ícone de perfil
    • bugs do bot de IA
    • fluxo admin (lista/detalhes)

✅ Checklist rápido de validação

  1. Banco

    • Inserir registros com acentos/emojis e validar retorno correto.
    • Conferir collation utf8mb4 nas tabelas.
  2. Produtos

    • Admin cria/edita/remove produto com imagem.
    • Usuário busca produtos e visualiza imagem.
    • Favorita e lista favoritos com imagem.
    • Homepage retorna destaques randômicos.
  3. Perfil

    • Visualizar dados do usuário logado.
    • Alterar nome.
    • Alterar senha e validar hash/login.
  4. IA

    • Endpoint do assistente responde corretamente.
    • Validar contexto do projeto nos prompts.
  5. Infra

    • Subida do compose sem falha de banco.
    • Teste de múltiplas requisições observando estabilidade do pool.