Skip to content

Leo02452/car-shop

Repository files navigation

Car Shop

Índice

📄 Descrição

Esse projeto foi desenvolvido durante o módulo de backend na Trybe. O desafio foi criar uma API para gerenciar uma loja de veículos utilizando NODE.js e Typescript com MongoDB e Mongoose para mapear o banco.

Além disso, a proposta era ter mais reaproveitamento de código com POO e SOLID.

O projeto original foi entregue, mas entendendo que há espaço para melhorias, coloquei na seção de próximos passos tarefas extras que quero implementar.

🚧 Próximos passos

Ver mais
  • Criar uma documentação Swagger para a API.
  • Terminar os testes unitários para cobrir 100% da aplicação (cobertura atualmente em 70%)

💡 Habilidades desenvolvidas

Ver mais
  • Criar classes mais genericas para reaproveitamento de código

  • Catálogo de erros

  • Testes unitários com Typescript

  • Criar uma API com MongoDB (e Mongoose para mapeamento)

✨ Funcionalidades

Ver mais

✔️ Criar um carro

✔️ Editar um carro

✔️ Listar todos os carros

✔️ Listar apenas um carro

✔️ Deletar um carro

✔️ Criar uma moto

✔️ Editar uma moto

✔️ Listar todas as motos

✔️ Listar apenas uma moto

✔️ Deletar uma moto

🛠️ Ferramentas

Ver mais

💻 Como usar a aplicação

Pré-requisitos

Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas:

Clone e instale as dependências 1 - Clone esse repositório para sua máquina com o seguinte comando:
 git clone git@github.com:Leo02452/car-shop.git

2 - Entre na pasta criada:

 cd car-shop

3 - Instale as dependências:

 npm install
Rodando a aplicação localmente 4 - Inicie a aplicação:
 npm start
Rodando a aplicação via docker

Antes de começar, você vai precisar ter instalado em sua máquina, além de NODE e Git, as seguintes ferramentas:

4 - Construa os containers:

 docker-compose up -d

5 - Para visualizar o terminal com a aplicação rodando, execute o comando:

 docker container run logs car-shop
Outros scripts da aplicação (backend)
  • npm run dev para rodar a aplicação com Nodemon e atualizá-la automaticamente após alteração de qualquer arquivo dentro da pasta src;
  • npm run test:dev para rodar todos os testes com Mocha;
  • npm run test:coverage para rodar todos os testes e gerar o relatório de cobertura na tela do terminal;
  • npm run lint para rodar o ESLint;

📝 Autor

Desenvolvido por Leonardo Araujo

Email: leonardo_02452@hotmail.com

Github: https://github.com/Leo02452

LinkedIn: https://www.linkedin.com/in/leo02452/


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published