Skip to content

Esse projeto tem como objetivo representar uma API de entregas realizadas por drones.

Notifications You must be signed in to change notification settings

WBomfim/Drone-Feeder

Repository files navigation

Boas-vindas ao projeto Drone Feeder!

👨‍💻 Descrição do projeto

O projeto consiste em uma aplicação que representa uma API Rest de controle de entregas por drones.

📝 Detalhes do desenvolvimento

Nesse projeto foi utilizado a linguagem Java e o framework Spring-boot para o desenvolvimento, na parte de armazenamento, foi utilizado MySQL para persistência da aplicação e hsql para armazenamento no contexto de testes, os quais foram realizados com JUnit, a aplicação foi montada em um ambiente docker, utilizando o docker-compose para orquestração dos containers.

🎲 Diagrama de entidades e relacionamentos

digram

📖 Documentação

Click aqui para acessar a documentação

Instruções para rodar o projeto

🐳 Rodando com docker

⚠️ Atenção: É necessário ter o docker instalado em sua máquina.

Primeiramente clone o projeto no diretório de sua preferência:

  git clone [email protected]:WBomfim/Drone-Feeder.git

Acesse o diretório clonado:

  cd Drone-Feeder

⚠️ Atenção: Lembre-se de verificar se não há outra aplicação rodando nas portas 3306 e 8080, caso tenha, será necessário parar os serviços antes de subir os containers.

Suba os containers para por a aplicação em funcionamento:

  docker-compose up
  • Se preferir pode usar a flag -d para rodar os containers em background.

A aplicação estará disponivel para acesso conforme abaixo, sendo possível realizar requisições seguindo as instruções da documentação:

  localhost:8080
  • Para encerrar a aplicação basta pressionar Ctrl + C

  • Se tiver optado por rodar os containers em segundo plano, para encerrar utilize:

  docker-compose down
💻️ Rodando localmente

⚠️ Atenção: É necessário ter a JRE-11 e JDK-11 instalados em sua máquina.

Primeiramente clone o projeto no diretório de sua preferência:

  git clone [email protected]:WBomfim/Drone-Feeder.git

Acesse o diretório clonado:

  cd Drone-Feeder

Crie no seu MySQL um schema com o nome de sua preferência, sugerimos Drone_Feeder.

Defina o nome do schema criado na variável de ambiente:

  export MYSQL_DATABASE=nome_do_schema

Defina o host do seu banco na variável de ambiente:

  export MYSQL_HOST=nome_do_schema

Defina o usuario do seu banco na variável de ambiente:

  export MYSQL_USER=nome_do_schema

Defina a senha do seu banco na variável de ambiente:

  export MYSQL_PASSWORD=nome_do_schema

E finalmente rode a aplicação:

  mvn spring-boot:run

A aplicação estará disponivel para acesso conforme abaixo, sendo possível realizar requisições seguindo as instruções da documentação:

  localhost:8080
  • Para encerrar a aplicação basta pressionar Ctrl + C

Demais detalhes

🚀 Próximas implementações
  • Implementar testes de integração para cobrir 100% da aplicação.
  • Implementar testes unitário em toda a camada de serviço.
  • implementar validações de acesso aos endpoits.
  • Implementar um micro servidor em javascrip para simular o funcionamento dos drones.
  • Implementar um front-end para criar uma esperiência mais visual da aplicação.

Autores

🖋️ @Willian Bomfim
🖋️ @Gregory Oliveira

About

Esse projeto tem como objetivo representar uma API de entregas realizadas por drones.

Topics

Resources

Stars

Watchers

Forks