/On14-TodasEmTech-s11-PG-II

Turma Online 14 - Back-end | Projeto Guiado II

API - FORKIDS

🚀 Descrição

Como mãe de duas crianças pequenas passei por varios infortunio, como trocar a fralda do meu filho em uma mesa porque o estabelecimento nao tinha fraldario ou um simples trocador no banheiro, ou ficar horas rodando de carro para encontrar um restaurante com espaço kids.

Para minizar esse sofrimento nasce a FORKIDS uma plataforma onde pais e mães cadastram estabelecimentos (restaurantes, cinema, hotel, cabeleireiro) etc que são adequados para levar as crianças, afinal nada pior do que chegar em um lugar e não encontrar nem uma cadeirinha para colocar o pequeno ou um cardapio adequado para crianças. De pais para pais essa é a essencia do FORKIDS

Sumário

=================

✅Objetivos

  • Cadastro de estabelecimentos pelos usuarios;
  • Busca de estabelecimentos por categoria, por bairro e cidade;
  • Avaliação dos estabelecimentos atraves de like ou deslike e comentarios dos usuarios;
  • Simplificar a busca de estabelecimentos adequados para levar as crianças;

✅Aprendizados

O projeto final consiste em uma API fundamentada no CRUD, que são: CREATE (CRIAR), READ(LER-CONSULTA), UPDATE(ATUALIZAR) e DELETE(DESTRUIÇÃO).

✅Arquitetura

    Arquitetura MVC
    |
    \--📂  FORKIDS
        |   README.md  
        |   .env
        |   .gitignore
        |   package-lock.json
        |   package.json
        |   **server.js**
        \--📂 node_modules
        \--📂 assets
        \--📂src
            |
            |   **app.js**
            |
            |
            📂---controller
            |       
            |       estabelecimentoController.js
            |                      
            📂---model
            |       
            |       
            |       estabelecimento.js
            |       
            |
            📂---routes
            |      
            |       estabelecimentoRoutes.js**
            |__      

✅Instalação

  • Para realizar download do projeto, siga as instruções abaixo:

👩‍👧‍👦Pré-requisitos

Você precisa ter instalado em sua máquina as seguintes ferramentas: Git, Node.js e o database NoSQL Mongodb E claro o bom e velho editor de código como VSCode

👩‍👧‍👦Rodando o Back End

Server Local

# Com o git
# Clone este repositório
$ git clone <git@github.com:Edlaine-Pontes/Forkids.git>

# Acesse a pasta do projeto no terminal/cmd
$ cd Forkids

# Instale as dependências
$ npm install
$ npm instal mongoose

# Execute o servidor
$ npm start

# O servidor inciará na porta:33 - acesse <http://localhost:3000>
# Mongo conectado em mongodb://localhost:27017/forkids
  • Modifique .env para receber as variáveis de ambiente e substitua para que seu servidor funcione adequadamente

Para acessar via Heroku, acesse o link da API

  • Utilize o Postman ou Insomnia para para chamar e testar os endpoints da API localmente ou via Heroku

🛠Tecnologias

Para a consturição do projeto, as seguintes tecnologiasforam utilizadas:

👩‍👧‍👦Features

Funcionalidades da aplicação

  • Cadastros do estabelecimento - POST
  • Comentario - POST
  • Like ou deslike - POST
  • Busca - GET
  • Busca por Categoria, estado e cidade - GET
  • Atualização em todos os campos - PUT
  • Apagar - DELETE

👩‍👧‍👦Rotas

Retorna teste com apresentação

{ mensagem: O app está rodando em http://localhost:3000 }

  • "/estabelecimentos"

Cria novo cadastro de estabelecimento

  • "/estabelecimentos"

Retorna estabelecimento por um id específico

  • "/:Id"

Deleta cadastro do estabelecimento

  • "/estabelecimentos/[ID]"

Dar um like em um estabelecimento

  • "/estabelecimentos/[ID]/like"

Atualiza o cadastro de um estabelecimento (id não pode ser modificado)

  • "/estabelecimento/[ID]"

✅Modelo com campos obrigatórios para teste

👩‍👧‍👦 Estabelecimentos

{ "nome": "Bar do Juarez", "site": "http://www.estabelecimento1.com.br", "categoria": "restaurante", "logradouro": "Rua Hum", "numero": 2, "bairro": "centro", "cidade": "Jundiaí", "estado": "sp" }

🚧 Projeto em Construção

    Autenticação
    Sistema de Login
    Ranking

Agradecimentos

Aos 36 anos, depois de trabalhar por 16 anos em RH decidi que era hora de mudar de carreira. Me organizei e fiz um bom planejamento financeiro, mas nem todo planejamento poderia me preparar para esse caminho dificil e algumas vezes doloroso. Mesmo ouvindo que eu era velha demais ou que por ser Psicologa eu não seria capaz de programar, eu nao desisti e no caminho encontrei a REPROGRAMA e a CLOUD GIRLS. Mulheres maravilhosas que acreditaram em mim quando eu nao acreditei. Rainhas guerreiras que conseguem equilibrar familia, estudo e trabalho. Entao eu quero agradecer a cada mulher que conheci na turma ON6-XP, a CECI que sempre ilumina os nossos dias a Jô pela oportunidade de mudar a minha vida e cada mentora e monitora que doaram o que existe de mais valioso "tempo".
Um agradecimento especial ao meu marido Henrique Marti por ser meu porto seguro, minha inspiração e meu parceiro de vida, e ao meus filhos que tiveram paciencia (quando eu nao tinha).
E ao Cloud Girls (Juh e Danilo) que abriu as portas da mudança e me permitiu voar bem alto.

E lembre-se programar é ERRAR, ERRAR, ERRAR e ACERTAR e não esqueça de ser divertir!