Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kenmarcos/find-a-friend-api-rs
API de adoção de pets. Desafio 03 da formação Node.js da Rocketseat.
https://github.com/kenmarcos/find-a-friend-api-rs
fastify nodejs prisma-orm typescript zod
Last synced: about 2 months ago
JSON representation
API de adoção de pets. Desafio 03 da formação Node.js da Rocketseat.
- Host: GitHub
- URL: https://github.com/kenmarcos/find-a-friend-api-rs
- Owner: kenmarcos
- Created: 2024-08-16T21:14:41.000Z (4 months ago)
- Default Branch: main
- Last Pushed: 2024-08-19T02:36:39.000Z (4 months ago)
- Last Synced: 2024-10-12T02:42:08.236Z (2 months ago)
- Topics: fastify, nodejs, prisma-orm, typescript, zod
- Language: TypeScript
- Homepage:
- Size: 199 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## 🖥️ Sobre o Projeto
> Projeto desenvolvido como desafio referente ao módulo **Implementando o SOLID** da Formação de Node.js da Rocketseat.
Esse projeto consiste em uma aplicação back-end de um sistema para adoção de animais.
As funcionalidades dessa aplicação são:
- [x] Cadastrar uma ORG
- [x] Login como uma ORG
- [x] Cadastrar um pet
- [x] Listar todos os pets disponíveis para adoção em uma cidade
- [x] Filtrar pets por suas características
- [x] Visualizar detalhes de um pet para adoção## 💡 Endpoints
| Método | Endpoint | Responsabilidade | Regras de Negócio |
| ------ | ------------------ | ---------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- |
| POST | /orgs | Cria uma ORG | |
| POST | /orgs/authenticate | Autentica uma ORG | |
| POST | /orgs/pets | Cadastra um pet | Um pet deve estar ligado a uma ORG |
| GET | /orgs/pets | Lista os pets disponíveis para adoção em uma cidade e filtrados por suas características | Para listar os pets, obrigatoriamente precisamos informar a cidade. Os outros filtros são opcionais |
| GET | /orgs/pets/:petId | Retorna detalhes de um pet para adoção | |## 🛠️ Tecnologias
Para o desenvolvimento desse projeto, as seguintes ferramentas foram utilizadas:
- **[Node.js](https://nodejs.org/)**
- **[Fastify](https://fastify.io/)**
- **[TypeScript](https://www.typescriptlang.org/)**
- **[Prisma](https://www.prisma.io/)**
- **[Zod](https://zod.dev/)**## 👨💻 Autor
Marcos Kenji Kuribayashi
---