Este projeto foi construído na faculdade como parte de um projeto de integração entre várias disciplinas (TCC). A API de Gerenciamento de Refeições Saudáveis é uma API robusta e escalável projetada para gerenciar rotinas de refeições saudáveis e notificações para os usuários. Construída usando Spring Boot com Maven, segue os princípios da Arquitetura MVC e Hexagonal. A API utiliza Hibernate JPA para interações com o banco de dados PostgreSQL, rodando localmente via Docker e Docker Compose. Para produção, a API é implantada usando Azure App Services, e as imagens são armazenadas usando Azure Blob Storage. A autenticação é feita usando tokens JWT, que expiram em uma hora. Os endpoints da API são documentados com Swagger. A API é usada para um aplicativo móvel Flutter. Você pode encontrar o repositório do aplicativo móvel aqui.
Acesse o protótipo de layout construído no Figma clicando aqui
- Criação de uma Refeição
- Criação de uma Rotina
- Java 17
- Spring Boot
- Maven
- Hibernate JPA
- PostgreSQL
- Docker & Docker Compose
- Azure App Services
- Azure Blob Storage
- JWT Authentication
- Swagger
- Flutter (Mobile Application)
-
Clone o repositório:
git clone https://github.com/unlockway/unlockway_api_v2.git cd ./unlockway_api_v2
-
Instale o Docker e o Docker Compose:
-
Configure o banco de dados Postgre:
docker-compose up --build -d # or `docker compose up --build -d (whitout the -)`
-
Configure as propriedades da aplicação:
- Atualize o arquivo
application.properties
com as variáveis de produção necessárias caso queira rodar em produção.
- Atualize o arquivo
-
Instale as dependências:
mvn clean install
-
Rode a aplicação:
mvn spring-boot:run
-
Acesse a documentação do Swagger:
- Navegue para
http://localhost:8080/swagger-ui/index.html
para visualizar e testar os endpoints.
- Navegue para
Você também pode usar um editor de código (IDE) de sua preferência para executar a API. Aqui vai algumas opções populares:
-
Fork o repositório
-
Crie uma nova branch:
git checkout -b feature/your-feature-name
-
Faça suas alterações e então crie um commit:
git commit -m "Add your message here"
-
Empurre suas alterações pra uma branch remota:
git push origin feature/your-feature-name
-
E por fim crie um Pull Request
![]() |
![]() |
![]() |
![]() |
![]() |
---|---|---|---|---|
Victor H. Silva | Bruno Pequeno | Daniel Vieira | Felipe Thaylan | João Zavisas |