Projeto desenvolvido utilizando Angular e Express durante o Desafio Angular na Prática da Rocketseat.
Este projeto é uma simulação de um sistema de gestão de produtos que inclui as seguintes funcionalidades:
- Tela de Login: Autenticação de usuários.
- Listagem de Produtos: Exibição de produtos com opções de filtro por título e status.
- Tela de Criação de Produto: Interface para adicionar novos produtos ao catálogo.
O projeto é dividido em um frontend utilizando Angular e um backend utilizando Express.
Todos os cadastros de usuários e produtos são salvos localmente em arquivos JSON.
Para rodar a aplicação, você deve iniciar tanto o servidor do backend quanto o frontend em terminais separados.
Backend (Express): localizado no diretório /marketplace-seller-panel-server
Frontend (Angular): localizado na raiz /
OBS.: O arquivo marketplace-seller-panel-server.postman_collection.json, localizado na pasta marketplace-seller-panel-server, contém a coleção de endpoints que podem ser importados no Postman para os testes da API.
- Node.js >= 22.19.0
- Angular CLI >= 20
-
Abra um terminal na pasta
marketplace-seller-panel-server. -
Instalar dependências:pnpm install
-
Iniciar o servidor:pnpm run dev
-
Acesse o servidor em
http://localhost:3000
-
Abra um terminal na raiz
/. -
Instalar dependências:pnpm install
-
Iniciar a aplicação:pnpm start
-
Acesse a aplicação em
http://localhost:4200/login -
Login padrão:
- Email: example@example.com
- Senha: 12345
- Alterar URL base:
- Altere a variável
apiUrlem/src/environments/environment.tspara URL desejada.
- Altere a variável
Backend (http://localhost:3000):
/- Rota para verificar se o servidor está em execução;/api/protected- Rotas protegidas;/api/products/- Rota para obter os produtos;/api/products/register- Rota para cadastrar um novo produto;/api/products/:id- Rota para editar um produto por ID;/api/users/login- Rota para login do usuário;/api/users/register- Rota para cadastrar um novo usuário;/api/users/profile- Rota para obter o perfil do usuário autenticado;
Frontend (http://localhost:4200):
/login- Formulário de Login;/products- Lista de produtos cadastrados;/new-product- Formulário para cadastro de produtos;
pnpm dev- Inicia o servidor de desenvolvimento local do Expressng serve- Inicia o servidor de desenvolvimento local do Angularng build- Compila o projeto Angular para produçãong test- Executa os testes unitários com o Karmang e2e- Executa os testes end-to-endng g component component-name- Gera um novo componente Angularng g component component-name --skip-tests=true- Gera um novo componente Angular sem testes unitáriosng g --help- Exibe a lista de comandos disponíveis
TypeScriptNode.js - 22.19.0Express - 5.0.3Angular - 20.3.1RxJS - 7.8.2Tailwind CSS - 4.1.13
Desenvolvido durante o Desafio Angular na Prática da Rocketseat



