Uma API, feita em NodeJS, que retorna receitas com seus respectivos GIFs.
Cogo limpo, seguindos os devidos padrões e com teste.
RecipePuppy (http://www.recipepuppy.com/about/api/) Giphy (https://developers.giphy.com/docs/)
Dê um clone no projeto aqui do GitHub, acesse a pasta da aplicação e em seguida instale as dependências.
npm install
Em seguida dê o comando para iniciar a aplicação
npm start
O projeto está rodando na porta 3000
, então quando for testar a API, utilize a URL localhost:300
O projeto consiste em retornar uma lista de 10 receitas de acordo com o parâmetro informado. Para acessar a função principal de pesquisar receitas, faça um GET
como no exemplo abaixo:
http://localhost:3000/recipes/bacon
Neste exemplo, a API retornará receitas que contém o termo "bacon" e retorno será algo como:
{
"keywords": ["bacon"],
"recipes": [
{
"title": "Easy Bacon-Wrapped Dates",
"ingredients": "bacon, dates",
"link": "http://www.recipezaar.com/Easy-Bacon-Wrapped-Dates-169050",
"gif": "http://gph.is/19tIkhH"
},
{
"title": "Bacon Wrapped Green Beans",
"ingredients": "bacon, green beans",
"link": "http://www.recipezaar.com/Bacon-Wrapped-Green-Beans-112823",
"gif": "http://gph.is/19tIkhH"
}
]
}
Você pode informar mais de um parâmetro separado por vírgula: http://localhost:3000/recipes/bacon,eggs
No retorno teremos o campo keywords
que são as palavras colocadas no parâmetro e o campo recipes
que é a lista de receitas. O objeto contido nesse array tem os campos title
, ingredients
e link
que vêm da RecipePuppy
e o campo gif vem da Giphy
.
Para rodar os testes dê o camando npm run test
. Os testes estão usando o framework Jest (https://jestjs.io/)
Express
Axios, dotenv, docker e jest
Nodemon, sucrase, eslint, prettier e esm
Para rodar o projeto diretamente do Docker use o comando
docker run --name receitas -p 3000:3000 -d sandersoncorrea/receitasendpoint