Neste projeto, foi desenvolvida uma API para simular uma loja de itens medievais utilizando Typescript.
Foram desenvolvidas todas as camadas da aplicação (Models, Service e Controllers), e por meio dessa aplicação, será possível realizar as operações básicas que se pode fazer em um determinado banco de dados: Criação, Leitura, Atualização e Exclusão (ou CRUD, para as pessoas mais íntimas - Create, Read, Update e Delete). O REST foi feito utilizando MySql.
Ver rotas
- POST
/productspara cadastrar novo produto. Utilize um body nesse formato:
{
"name": "Adaga misteriosa",
"amount": "26 peças de ouro"
}- POST
/userspara criar um novo usuário. Utilize um body nesse formato:
{
"username": "Arthur",
"classe": "swordsman",
"level": 10,
"password": "kingArthur"
}- POST
/loginpara fazer login e receber um token. Utilize um body nesse formato:
{
"username": "yourUser",
"password": "yourPassword"
}- POST
/orderspara adicionar um novo pedido, o usuário precisa estar logado. Utilize um body nesse formato:
{
"productsIds": [1, 2]
}- GET
/productspara listar todos os produtos.
- GET
/orderspara listar todos os pedidos.
Pré-requisitos
Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas:
É recomendado utilizar algum cliente HTTP, como Postman ou o Insomnia.
Também é bom ter um editor para trabalhar com o código como VSCode
1- Clonar o repositorio
git clone git@github.com:TonyyCruz/trybesmith.git🐳 Rodando no Docker
Rode o serviço node com o comando
docker-compose up -d- Esse serviço irá inicializar dois containers chamados
trybesmithe outro chamadotrybesmith_db.- A partir daqui você pode rodar o container via CLI ou abri-lo no VS Code.
Via CLI use o comando
docker exec -it trybesmith bash- Ele te dará acesso ao terminal interativo do container trybesmith criado pelo compose, que está rodando em segundo plano.
Instale as dependências dentro do container com
npm install💻 Rodando Localmente
Instale as dependências com o comando
npm install- Para rodar o projeto desta forma, obrigatoriamente você deve ter o
nodeinstalado em seu computador.- Recomenda-se a versão
^16
- Recomenda-se a versão
Scripts
- Criar o banco de dados e gerar as tabelas:
npm run dbcreate- Iniciar o servidor Node:
npm start- Iniciar o servidor Node com nodemon:
npm run dev