Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/carlos-hfc/find-a-friend
https://github.com/carlos-hfc/find-a-friend
fastify mysql nodejs prisma-orm rocketseat rocketseat-ignite typescript vitest zod
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/carlos-hfc/find-a-friend
- Owner: carlos-hfc
- License: mit
- Created: 2024-05-14T13:32:35.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-05-15T17:33:54.000Z (7 months ago)
- Last Synced: 2024-10-20T13:22:43.080Z (2 months ago)
- Topics: fastify, mysql, nodejs, prisma-orm, rocketseat, rocketseat-ignite, typescript, vitest, zod
- Language: TypeScript
- Homepage:
- Size: 90.8 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# :bulb: Sobre
O **Find a Friend** é um app para encontrar o pet ideal para seu estilo de vida desenvolvido no módulo sobre API REST da formação de Node.js da Rocketseat.
## :page_with_curl: Pré-requisitos
1. Antes de começar, certifique-se de ter o Node.js instalado em sua máquina.
## :gear: Configuração
1. Clone o repositório para sua máquina local:
```bash
git clone https://github.com/carlos-hfc/find-a-friend
```2. Acesse o diretório do projeto:
```bash
cd find-a-friend
```3. Instale as dependências:
```bash
npm install
```4. Crie um arquivo `.env.local` na raiz do projeto e adicione as seguinte chaves:
```env
NODE_ENV=""
DATABASE_URL=""
JWT_SECRET=""
```5. Rode a aplicação
```bash
npm run dev
```## :computer_mouse: Features
### Requisitos funcionais
- :ballot_box_with_check: Deve ser possível se cadastrar como uma ORG
- :ballot_box_with_check: Deve ser possível realizar login como uma ORG
- :ballot_box_with_check: Deve ser possível cadastrar um pet
- :ballot_box_with_check: Deve ser possível listar todos os pets disponíveis para adoção em uma cidade
- :ballot_box_with_check: Deve ser possível filtrar pets por suas características
- :ballot_box_with_check: Deve ser possível visualizar detalhes de um pet para adoção### Regras de negócio
- :ballot_box_with_check: Uma ORG precisa ter um endereço e um número de WhatsApp
- :ballot_box_with_check: Para um ORG acessar a aplicação como admin, ela precisa estar logada
- :ballot_box_with_check: O usuário que quer adotar, entrará em contato com a ORG via WhatsApp
- :ballot_box_with_check: Um pet deve estar ligado a uma ORG
- :ballot_box_with_check: Para listar os pets, obrigatoriamente precisamos informar a cidade
- :ballot_box_with_check: Todos os filtros, além da cidade, são opcionais## :computer: Tecnologias utilizadas
## :page_facing_up: Licença
Este projeto está licenciado sob a [Licença MIT](LICENSE).