MikaelaBraga / trybesmith-crud

API CRUD em Node Express utilizando TypeScript

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Boas vindas ao repositório do projeto Trybesmith!

Habilidades

O objetivo neste projeto:

  • Declarar variáveis e funções com tipagens Typescript;

  • Construir uma API Node Express utilizando o Typescript.


Instalação

  1. Clone o repositório
  • git clone git@github.com:MikaelaBraga/trybesmith-crud.git.

  • Entre na pasta do repositório que você acabou de clonar:

    • cd trybesmith-crud
  1. Instale as dependências [Caso existam]:
  • npm install
  1. Configurando o banco com Docker
  • docker container run --name trybe-smith -e MYSQL_ROOT_PASSWORD=password -d -p 3306:3306 mysql:5
  • Certifique-se de setar as variáveis de ambiente no arquivo .env

Certifique-se que vocễ tem o Docker instalado na sua máquina

  1. Iniciando a API, na raíz do diretório rode
  • npm start

Endpoints

POST /users

Cadastra um usuário

{
  "username": "string",
  "classe": "string",
  "level": 1,
  "password": "string"
}

POST /login

Efetua login

  {
    "username": "string",
    "password": "string"
  }

POST /products

Cadastra um produto

  {
    "name": "Espada longa",
    "amount": "30 peças de ouro"
  }

GET /products

Listagem de produtos

    [
      {
        "id": 1,
        "name": "Poção de cura",
        "amount": "20 gold",
        "orderId": null
      },
      {
        "id": 2,
        "name": "Escudo do Herói",
        "amount": "100 diamond",
        "orderId": 1
      }
    ]

POST /orders

Cadastro de pedidos

  {
    "products": [1, 2]
  }

GET /orders/:id

Consulta um pedido

      {
        "id": 1,
        "userId": 2,
        "products": [1, 2]
      }

GET /orders

Listagem de pedidos

      [
        {
          "id": 1,
          "userId": 2,
          "products": [1, 2]
        },
        {
          "id": 2,
          "userId": 2,
          "products": [3, 1, 4]
        }
      ]

About

API CRUD em Node Express utilizando TypeScript


Languages

Language:TypeScript 100.0%