Skip to content

Mykaell-Max/PetConnect

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PetConnect

PetConnect é uma API para facilitar o processo de adoção e doação de pets, oferecendo uma plataforma para que usuários possam cadastrar, buscar e adotar animais.

Índice

Instalação

Para instalar e rodar a aplicação localmente:

  1. Clone este repositório:

    git clone https://github.com/Mykaell-Max/PetConnect
  2. Instale as dependências:

    npm install
  3. Configure as variáveis de ambient:

    MONGO=your_key
    JWTKEY=your_key
    FIREBASE_KEY=your_key
    OPENCAGE_KEY=your_key

Rotas da API

User

Método Endpoint Descrição
POST /users/register Cria um novo usuário
POST /users/login Autentica um usuário
GET /users/:userId Retorna as informações de um usuário
PATCH /users/:userId Atualiza os dados de um usuário
DELETE /users/:userId Deleta um usuário
POST /users/:userId/profilePic Adiciona ou atualiza a foto de perfil
PATCH /users/:userId/profilePic Atualiza a foto de perfil do usuário
DELETE /users/:userId/profilePic Deleta a foto de perfil de um usuário

Pet

Método Endpoint Descrição
GET /pets/searchAll Retorna todos os pets disponíveis para adoção
POST /pets/register Cadastra um novo pet, com até 5 imagens
GET /pets/:petId Retorna informações de um pet específico
PATCH /pets/:petId Atualiza as informações de um pet específico
DELETE /pets/:petId Deleta um pet específico
PATCH /pets/:petId/adoption-request Adiciona uma solicitação de adoção para um pet
DELETE /pets/:petId/adoption-request Remove uma solicitação de adoção para um pet
POST /pets/:petId/picture Adiciona novas fotos ao perfil do pet
DELETE /pets/:petId/picture Deleta uma foto específica do perfil do pet

Chat

Método Endpoint Descrição
POST /chats/createChat Cria um novo chat entre dois usuários
POST /chats/:chatId Adiciona uma nova mensagem a um chat
GET /chats/:chatId Retorna todas as mensagens de um chat
DELETE /chats/:chatId Deleta um chat específico
GET /chats/preview/:userId Retorna uma prévia de todos os chats do usuário

Dependências

  • axios: ^1.7.7 - Cliente HTTP baseado em Promises para fazer requisições.
  • bcrypt: ^5.1.1 - Biblioteca para hashing de senhas.
  • cors: ^2.8.5 - Middleware para habilitar CORS (Cross-Origin Resource Sharing).
  • dotenv: ^16.4.5 - Carrega variáveis de ambiente de um arquivo .env.
  • express: ^4.21.0 - Framework web para Node.js.
  • express-rate-limit: ^7.4.1 - Middleware para limitar o número de requisições.
  • firebase: ^10.14.0 - SDK do Firebase para interações com serviços como Firestore e Storage.
  • jsonwebtoken: ^9.0.2 - Biblioteca para gerar e verificar tokens JWT.
  • mongoose: ^8.7.0 - ODM (Object Data Modeling) para MongoDB e Node.js.
  • morgan: ^1.10.0 - Middleware para logs de requisições HTTP.
  • multer: ^1.4.5-lts.1 - Middleware para lidar com uploads de arquivos.
  • nodemon: ^3.1.7 - Utilitário para reiniciar automaticamente o servidor durante o desenvolvimento.
  • sharp: ^0.33.5 - Biblioteca para processamento de imagens.
  • uuid: ^10.0.0 - Biblioteca para gerar IDs únicos.

Desenvolvedores

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •