Repository navigation
Releases: jeniferplacido/NodeShopPro
Release list
v1.3.0
Integração com MongoDB e Mongoose
Banco de Dados MongoDB: Agora estamos utilizando o MongoDB como nosso principal sistema de persistência. O banco de dados foi configurado no MongoDB Atlas com as coleções carts, messages, e products.
Modelos Mongoose: Os esquemas do MongoDB foram definidos utilizando Mongoose, organizados na pasta dao/models.
Atualizações na Persistência
Gestão de Produtos: Implementamos filtros, paginação e ordenação na consulta de produtos. Agora você pode buscar produtos por categoria ou disponibilidade e ordenar por preço. A resposta da API inclui informações sobre a paginação e links diretos para páginas anteriores e seguintes.
Gestão de Carrinhos: Adicionamos a capacidade de atualizar carrinhos e produtos dentro dos carrinhos com novos endpoints. O carrinho agora usa IDs de produtos referenciados e a função populate para obter detalhes completos dos produtos.
Novos Endpoints e Funcionalidades
Produtos:
GET /products: Suporte para parâmetros de consulta limit, page, sort e query para buscar e ordenar produtos de maneira eficiente.
Carrinhos:
PUT /carts/:cid: Atualiza o carrinho com uma matriz de produtos.
PUT /carts/
/products/:pid: Atualiza a quantidade de um produto específico no carrinho.
DELETE /carts/:cid: Remove todos os produtos do carrinho.
Novas Views em Handlebars
Chat: Implementamos uma nova visualização em chat.handlebars que permite o envio e recebimento de mensagens em tempo real, com as mensagens armazenadas na coleção messages do MongoDB.
Produtos: A visualização de produtos agora inclui uma página de listagem com paginação e uma visualização detalhada para cada produto, além de um botão para adicionar produtos ao carrinho.
Carrinho: A nova visualização em /carts/:cid exibe os produtos de um carrinho específico e permite a atualização ou remoção de produtos.
Função de Adicionar ao Carrinho
Implementação de Função JavaScript: Adicionamos uma função para adicionar produtos ao carrinho diretamente na interface do usuário. A função agora obtém o ID do carrinho do armazenamento local ou de uma chamada ao backend e faz a atualização via API.
Correções e Melhorias
Correções Gerais: Diversas melhorias e correções foram realizadas para garantir a estabilidade e a performance do sistema.
NodeShopPro v1.2.0
Integração com MongoDB e Mongoose:
- Adicionado suporte para persistência de dados usando MongoDB Atlas.
- Esquemas do Mongoose configurados para produtos, carrinhos e mensagens.
- Implementação de gerenciadores de dados utilizando Mongoose.
Novas Funcionalidades:
Sistema de Produtos:
- Criação de produtos com persistência no MongoDB.
- Leitura de todos os produtos e produtos por ID.
- Atualização de produtos existentes.
- Exclusão de produtos.
- Sistema de Carrinhos:
- Criação de novos carrinhos.
- Adição de produtos aos carrinhos.
- Visualização dos produtos em um carrinho específico.
Chat em Tempo Real:
- Implementação de um sistema de chat usando WebSocket.
- Visualização de mensagens em tempo real.
- Persistência das mensagens no MongoDB.
Melhorias na Estrutura do Projeto:
-Reorganização do projeto para separar gerenciadores de sistema de arquivos e MongoDB.
- Criação de uma estrutura de diretórios para modelos e gerenciadores de dados.
- Adição de novas rotas e serviços.
Novas Views com Handlebars:
- home.handlebars: Lista de todos os produtos.
- realTimeProducts.handlebars: Lista de produtos com atualização em tempo real via WebSocket.
- chat.handlebars: Sistema de chat com mensagens em tempo real.
Correções de Bugs:
- Correção de problemas relacionados à definição de variáveis e erros de referência.
- Melhorias na lógica de adição e exclusão de produtos para garantir a atualização correta das listas.
v1.1.0
Esta versão adiciona suporte ao Handlebars como motor de templates e integra WebSocket para atualização em tempo real da lista de produtos. Com isso, as visualizações podem exibir produtos dinamicamente à medida que são adicionados ou removidos.
Novidades
Handlebars:
- Configuração do Handlebars como motor de templates.
- Criação de views home.handlebars e realTimeProducts.handlebars.
WebSocket:
- Integração do servidor com socket.io.
- Atualização em tempo real da lista de produtos em realTimeProducts.handlebars.
Novas Rotas:
/realtimeproducts: Visualização que exibe produtos atualizados em tempo real.
Manutenção de Produtos:
- Formulário para adicionar e remover produtos em tempo real usando WebSocket.
- Mudanças Técnicas
- Adição das dependências express-handlebars e socket.io.
- Atualização do arquivo app.js para configurar o Handlebars e o servidor WebSocket.
- Atualização das rotas para suportar WebSocket na adição e remoção de produtos.
- Views dinâmicas utilizando Handlebars.
NodeShopPro v1.0.0
NodeShopPro v1.0.0
Esta é a primeira versão estável do NodeShopPro, uma aplicação backend de e-commerce desenvolvida com Node.js e Express.
Funcionalidades Principais
-
Gerenciamento de Produtos:
- Listar todos os produtos.
- Visualizar detalhes de um produto específico.
- Adicionar novos produtos.
- Atualizar informações dos produtos.
- Remover produtos do catálogo.
-
Gerenciamento de Carrinhos:
- Criar novos carrinhos de compras.
- Listar produtos dentro de um carrinho específico.
- Adicionar produtos aos carrinhos, com controle de quantidade.
Tecnologias Utilizadas
- Node.js
- Express
- File System para persistência de dados