edielson-assis / pawsOnCloud

Esta é a API Rest da aplicação PawsOnCloud, desenvolvida em Java e Spring Boot. O sistema permite que os usuários doem e adotem animais de estimação.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PawsOnCloud

Badge Concluído Badge Java Badge Springboot Badge MySQL


Tópicos

🔹 Descrição do projeto

🔹 Funcionalidades

🔹 Layout da Aplicação

🔹 Pré-requisitos

🔹 Como rodar a aplicação

📖 Descrição do projeto

Esta é a API Rest da aplicação PawsOnCloud, desenvolvida em Java e Spring Boot. O sistema permite que os usuários doem e adotem animais de estimação. Alguns dos principais recursos do sistema incluem:

  • Doar: Os usuários podem divulgar os animais que estão disponíveis para adoção, descrevendo detalhes sobre o pet.

  • Adotar: Os usuários podem adotar os animais que estão disponíveis, entrando em contato diretamente com o proprietário do animal.

Para mais detalhes sobre a API, basta acessar a documentação.

O front-end dessa aplicação pode ser acessado aqui.

💡 Funcionalidades

🔒 Autenticação do usuário

  • Login de usuário: O usuário deve fazer login para se autenticar na plataforma. Credênciais que devem ser usadas: email e senha. Toda comunicação e feita via token JWT.
  • Cadastro do usuário: Caso o usuário não possua cadastro, deverá se cadastrar para conseguir fazer login.
  • Atualização do usuário: Usuários autenticados podem atualizar os próprios dados de cadastro.
  • Exclusão da conta do usuário: O usuário poderá excluir a sua conta da plataforma.

👤 Doação de animais

  • Doar pets: O usuário poderá posta a imagem e detalhes dos pets que deseja doar.
  • Atualizar uma doação: O usuário confirmará se o pet foi doado.
  • Listar todas as doações: O usuário poderá listar todas as doações que ele realizou.
  • Cancelar uma doação: Caso uma doação não tenha sido finalizada, o usuário poderá cancelá-la, caso desista de doar o pet.

👤 Adoção de animais

  • Adotar pets: O usuário poderá adotar apenas os pets que estiverem com o status Disponível.
  • Atualizar uma adoção: O usuário confirmará se o pet foi adotado.
  • Listar todas as doações: O usuário poderá listar todas as adoções que ele realizou.
  • Cancelar uma adoção: Caso uma adoção não tenha sido finalizada, o usuário poderá cancelá-la, caso desista de adotar o pet.

🐱 Visualização de animais

  • Listar animais: O usuário poderá listar todos os animais que estiverem disponíveis para adoção.
  • Pesquisar pelo id: O usuário poderá pesquisar o animal pelo id.

Swagger 💨

Swagger

🧰 Modelo conceitual

UML

Pré-requisitos

  • Java JDK 17
  • IDE para desenvolvimento Java
  • Git
  • Conta no GitHub

Como rodar a aplicação ▶️

Faça um fork do projeto, após isso, abra o terminal do git bash na pasta onde deseja salvar o projeto, e digite o seguinte comando:

git clone git@github.com:edielson-assis/pawsOnCloud.git

Crie uma base de dados no MySQL com o nome projeto_integrador. Não é necessário criar as tabelas.

Em seguida, abra o projeto na IDE de sua preferência, atualize o arquivo application-dev.properties com os dados da base de dados criada. Em seguida, atualize as configurações do servidor SMPT. No campo username coloque o seu e-mail e no campo password a sua senha, essa senha é a senha de aplicativo da sua conta do Gmail. Caso não saiba como configurá-la, basta acessar esse tutorial. Depois disso, basta executar a aplicação a partir do método main.

Após executar o projeto, abra o seu navegador de internet e, na barra de endereço, digite o seguinte comando:

http://localhost:8080/swagger-ui/index.html

Agora é só testar as funcionalidades do projeto. Não se esqueça de se registrar e fazer login para se autenticar na plataforma. Toda comunicação entre os endpoints é feita via token JWT.

Obs: caso queira rodar os testes unitários, é necessário ter o Docker instalado para rodar os testes de repositório.

Linguagens, dependencias e libs utilizadas 📚

⚙️ Atualizações futuras

Back End

  • Escrever testes unitários.
  • Escrever testes de integração.
  • Alterar o link de validação para redirecionar os usuários para uma página web.
  • Criar um método para deletar ou atualizar o token de validação, caso o usuário realize o cadastro, mas não valide o email.
  • Implementar as funcionalidades para a página do blog.
  • Implementar as funcionalidades para a página das ongs.
  • Após finalizar a documentação, remover os comentários para deixar o código mais limpo.

Front End

  • Criar uma página para receber o token de validação e retornar se o email foi validado.
  • Alterar a estrutura da página de adoção para gerar os cards dinamicamente.
  • Criar o menu do usuário.
  • Dsiponibilizar o acesso ao formulário de adoção e doação no menu do usuário.
  • Retirar os formulários de adoção e doação da página de cadastramento.
  • Trocar a implementação da página de ongs para pegar os dados diretamente do banco de dados.
  • Alterar a estrutura da página de blog para reproduzir as postagens dinamicamente.
  • Criar uma página sobre nós.

Licença

The MIT License (MIT)

Copyright ©️ 2024 - PawsOnCloud

About

Esta é a API Rest da aplicação PawsOnCloud, desenvolvida em Java e Spring Boot. O sistema permite que os usuários doem e adotem animais de estimação.

License:MIT License


Languages

Language:Java 100.0%