Um projeto full-stack de e-commerce desenvolvido com Node.js (Express), MongoDB e frontend em JavaScript puro.
Este projeto simula um e-commerce completo, incluindo:
✔️ Autenticação de usuários e admin
✔️ CRUD de produtos
✔️ Carrinho de compras
✔️ Simulação de pagamento via PIX
- Backend completo com Express, Mongoose, JWT.
- Níveis de usuário (cliente, admin, super admin).
- Frontend com SPA básica e área exclusiva de administração.
- CRUD de produtos, comentários e usuários.
- Autenticação e autorização via JWT.
- Preparado para expansão: carrinho de compras, pagamento Pix.
| Backend | Frontend | Banco de Dados | Outros |
|---|---|---|---|
| Node.js + Express | HTML5 + CSS3 | MongoDB | Git (GitHub) |
| JavaScript (Vanilla) |
- Configuração inicial do backend (Express) e frontend estático.
- Create, Read, Update e Delete de produtos (painel admin).
- Autenticação de usuário comum e administrador.
- Adicionar/remover produtos e cálculo de total.
- Fluxo de checkout com simulação de pagamento.
- Design adaptável para diferentes telas.
- Node.js (v18+)
- MongoDB (local ou Atlas)
- Git
- Clone o repositório
git clone https://github.com/evertonProgramadorCriativo/E-Commerce-Full-Stack-Node.js-MongoDB-JavaScript-.git cd nome-do-repositorio - Rodando o Projeto
node backend/app.js # Servidor funcionando: node backend/app.js # Front-End acessível: index.html aberto no navegador
/ecommerce
├── /backend
│ ├── app.js # Configuração do servidor Express
│ ├── routes.js # Rotas da API para produtos
│ ├── routesUser.js # Rotas da API para usuários e admins
│ ├── controllers.js # Lógica dos endpoints de produtos
│ ├── controllersUser.js # Lógica dos endpoints de usuários e admins
│ ├── models.js # Modelos do MongoDB (Produto, Comentário, etc.)
│ ├── modelsUser.js # Modelo do MongoDB para Usuário com níveis
│ ├── authMiddleware.js # Middleware de autenticação via JWT
│ └── autorizarNivel.js # Middleware de autorização por nível de usuário
│
├── /frontend
│ ├── index.html # Página principal
│ ├── style.css # Estilos globais
│ ├── script.js # Lógica frontend (carrinho, login, admin, etc.)
│ ├── /admin # Páginas exclusivas do administrador
│ │ ├── painel.html # Painel de administração
│ │ ├── painel.css # Estilo do painel admin
│ │ └── painel.js # Lógica de CRUD de produtos/admins
│ ├── /components # Componentes reutilizáveis
│ │ ├── header.html # Cabeçalho
│ │ └── footer.html # Rodapé
│ └── /pages
│ ├── carrinho.html # Página do carrinho de compras
│ ├── login.html # Página de login e registro
│ └── produtos.html # Página de listagem de produtos
│
├── package.json # Dependências e scripts
├── .gitignore # Arquivos ignorados pelo Git
├── README.md # Documentação do projeto
└── .env # Variáveis de ambiente (como JWT_SECRET)