A "Find a Friend API" se trata de uma API desenvolvida em Node.js com o microframework Fastify, e tem como objetivo distribuir a disponibilidade de pets prontos para serem adotadas. Encontre seu próximo melhor amigo direto na sua cidade ou pelas suas características. A API utiliza o ORM Prisma para interagir com o banco de dados. Os testes ponta a ponta e unitários são realizados com o framework Vitest, e as validações são feitas utilizando o Zod. A API é escrita em TypeScript.
Node.js
npm (gerenciador de pacotes do Node.js)
Clone este repositório: git clone https://github.com/HiLucred/Find-a-Friend-API
Navegue até o diretório do projeto: cd find-a-friend-api
Instale as dependências do projeto: npm install
Inicie o servidor de desenvolvimento: npm start:dev
A API será iniciada e estará disponível em http://localhost:3333 por padrão.
No Insomnia, utilize a rota http://localhost:3333 e teste as rotas disponíveis na API.
Cria uma nova org
POST /orgs
Faz a autenticação de uma org
POST /sessions/
Registra um novo pet
POST /pets/register
Retorna todos os dados de um pet
GET /pets/:petId
Busca pets por características
POST /pets/characteristics
Busca pets que se encontram na cidade
GET /pets/city/:city
Para executar os testes unitários, certifique-se de ter as dependências instaladas e execute o seguinte comando:
npm run test
Para executar os testes E2E, certifique-se de ter as dependências instaladas e execute o seguinte comando:
npm run test:e2e
Tecnologias utilizadas 💻
Node.js
TypeScript
Fastify
Prisma
Zod
Vitest
tsup
Dotenv