Kpop Generation API é uma ferramenta de CRUD criada para disponibilizar dados para um front end. Você pode conferir a API funcionando pelo frontend nesse link https://kpopgeneration.netlify.app/
A API se encontra em produção hospedada no site Render.com e você pode testar pelos seguintes endpoits:
Esse endpoint retorna informação básica de todos os grupos. https://kpopgenerationapi.onrender.com/groups
As gerações no kpop atualmente vão de 1 a 5. Substitua ali o valor da query generation para ver outras gerações. https://kpopgenerationapi.onrender.com/groups/generation?generation=5
Nesse exemplo, retorna um grupo utilizando a query id. https://kpopgenerationapi.onrender.com/group?id=663cc2448f8a51c315e736bb
Para utilizar essa API é necessário que voce tenha instalado as seguintes ferramentas:
- Node JS
- Fastify
- Prisma IO
- TypeScript
Utilize o NPM para instalar essas dependências
Para utilizar com o seu Database, acesse o arquivo ".env" e substitua a variável de "DATABASE_URL" pelo valor fornecido pelo seu DB.
Nesse caso, foi utilizado o MongoDB como Database.
O Prisma, na sua instalação, criar esse arquivo ".env". No caso do MongoDB, a URL que você vai inserir ali tem essa configuração:
DATABASE_URL =
"mongodb+srv://<usuario>:<senha>@<nome-do-cluster>.fffva7y.mongodb.net/<nome-do-cluster>?retryWrites=true&w=majority&appName=<nome-do-app>";
Essa URL é gerada para você no momento da criação do seu cluster no MongoDB.
Se não estiver utilizando o MongoDB, lembre-se de atualizar o seu "provider" dentro do arquivo "schema.prisma" para o banco que você vai utilizar, como o postgresql
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}
Esse projeto é basicamente um CRUD onde é possível fazer as seguintes operações
Com o método POST no endpoint "/group", você pode criar um Grupo de kpop no DB.
Com o método GET, no endpoint "/groups", você vai listar todos os grupos recebendo apenas as propriedades "id", "name" e "image_url".
Com o método GET, no endpoint "/groups/generation?generation=5" informando a query "generation", você vai listar todos os grupos daquela geração recebendo apenas as propriedades "id", "name" e "image_url".
Com o método GET, no endpoint "/group?id=1234" informando a query "id", você vai listar apenas o grupo correspondente àquele ID todas as suas propriedades.
Com o método PUT no endpoint "/group?id=1234" informando a query "id", você pode atualizar as informações de um grupo de kpop no DB.
Com o método DELETE no endpoint "/group?id=1234" informando a query "id", você pode excluir um grupo de kpop no DB.
Esse projeto foi feito por Nycollas Kaique e é um projeto pessoal para o portfólio.
Por favor, caso tenha acesso a esse projeto, preserve os dados sensíveis contidos nele, como informações do acesso ao banco de dados.