Skip to content

Criar uma API RESTful capaz de gerenciar os restaurantes e os produtos do seu cardápio. Resources

License

Notifications You must be signed in to change notification settings

carloskotacho/goomer-api

Repository files navigation

logo-softmoney
Finalizado

LayoutSobre o projetoComo executarAutorLicença

➤ Sobre o projeto

Instruções

  • Nome do Projeto: Goomer Lista Rango
  • Objetivo do Projeto: Criar uma API RESTful capaz de gerenciar os restaurantes e os produtos do seu cardápio.
  • Tecnologia: Node.js com banco de dados relacional ou NoSQL.

Desafio

  • A sua API deverá ser capaz de:

    • Listar todos os restaurantes
    • Cadastrar novos restaurantes
    • Listar os dados de um restaurante
    • Alterar os dados um restaurante
    • Excluir um restaurante
    • Listar todos os produtos
    • Listar todos os produtos de um restautante
    • Criar um produto de um restaurante
    • Alterar um produto de um restaurante
    • Excluir um produto de um restaurante
  • O cadastro do restaurante precisa ter os seguintes campos:

    • Foto do restaurante
    • Nome do restaurante
    • Endereço do restaurante
    • Horários de funcionamento do restaurante (ex.: De Segunda à Sexta das 09h as 18h e de Sabado à Domingo das 11h as 20h).
  • O cadastro de produtos do restaurante precisa ter os seguintes campos:

    • Foto do produto
    • Nome do produto
    • Preço do produto
    • Categoria do produto (ex.: Doce, Salgados, Sucos...)
    • Quando o Produto for colocado em promoção, precisa ter os seguintes campos:
      • Descrição para a promoção do produto (ex.: Chopp pela metade do preço)
      • Preço promocional
      • Dias da semana e o horário em que o produto deve estar em promoção

➤ Como executar o projeto

Pré-requisitos

Antes de começar, você vai precisar ter instalado em sua máquina as seguintes ferramentas: Git, Node.js / Yarn.

🧭 Rodando a aplicação (Backend)

  1. Renomear o arquivo .env.example para .env;
  2. Criar um database com um nome qualquer (goomerdb)
  3. Adicionar as credenciais do seu database no arquivo .env, por exemplo:
DB_HOST=localhost
DB_USER=postgres
DB_PASS=qwerty
DB_NAME=goomerdb
# Clone este repositório
$ git clone git@github.com:carloskotacho/goomer-api.git

# Acesse a pasta do projeto no terminal/cmd
$ cd goomer-api

# Instale as dependências
$ yarn

# Rodar migrations
$ yarn sequelize db:migrate

# Rodar seeds
$ yarn sequelize db:seed:all

# Execute a aplicação
$ yarn dev

➤ Usando

Por fim, teste as requisições abaixo, utilizando algum sistema que teste serviços RESTful (Insomnia, Postman, etc...).

Restaurante

Verbo HTTP URL Descrição
GET http://localhost:3333/api/restaurants/v1 Listar todos os restaurantes
POST http://localhost:3333/api/restaurants/v1 Cadastrar novos restaurantes
GET http://localhost:3333/api/restaurants/:id/v1 Listar os dados de um restaurante
PUT http://localhost:3333/api/restaurants/:id/v1 Alterar os dados um restaurante
DELETE http://localhost:3333/api/restaurants/:id/v1 Excluir um restaurante

Produtos

Verbo HTTP URL Descrição
GET http://localhost:3333/api/products/v1 Listar todos os produtos
GET http://localhost:3333/api/products/restaurant/:id/v1 Listar todos os produtos de um restautante
POST http://localhost:3333/api/products/v1 Criar um produto

➤ Autor


Carlos Henrique
🚀

➤ Licença

Este projeto esta sobe a licença MIT.

by Carlos H. K

About

Criar uma API RESTful capaz de gerenciar os restaurantes e os produtos do seu cardápio. Resources

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published