Este é um projeto fullstack que consiste em uma aplicação com backend em Spring Boot e frontend em React. O projeto utiliza Docker para facilitar a execução e desenvolvimento.
Antes de começar, certifique-se de ter instalado em sua máquina:
- Docker
- Docker Compose
O projeto está dividido em duas partes principais:
saamTestProject/- Backend em Spring BootsaamTestProjectFront/- Frontend em React
git clone [URL_DO_REPOSITORIO]
cd saamTestProjectAntes de executar os containers, é necessário compilar o backend para gerar o arquivo JAR:
# Navegue até o diretório do backend
cd saamTestProject
# Para Windows
./mvnw.cmd clean package -DskipTests
# Para Linux/Mac
./mvnw clean package -DskipTestsO arquivo JAR será gerado no diretório target/.
Após a compilação do backend, volte para o diretório raiz e execute o Docker Compose:
# Voltar para o diretório raiz (se necessário)
cd ..
# Iniciar os containers
docker-compose up -dEste comando irá:
-
Construir e iniciar o container do backend (Spring Boot)
-
Construir e iniciar o container do frontend (React)
-
Construir e iniciar o container do Banco de dados (Postgres)
-
Configurar a rede entre os containers
Após a inicialização dos containers, você pode acessar:
- Frontend: http://localhost:8081
- Backend: http://localhost:8080
O backend disponibiliza os seguintes endpoints principais:
-
Authentication:
- POST
/api/auth/login- Login de usuário - POST
/api/auth/register- Registro de novo usuário
- POST
-
Products:
- GET
/api/products- Lista todos os produtos - POST
/api/products- Cria um novo produto - GET
/api/products/{id}- Obtém detalhes de um produto específico - PUT
/api/products/{id}- Atualiza um produto - DELETE
/api/products/{id}- Remove um produto
- GET
Para parar todos os serviços, execute:
docker-compose downPara visualizar os logs dos containers:
# Logs do backend
docker-compose logs -f backend
# Logs do frontend
docker-compose logs -f frontendSe você fizer alterações no código e precisar reconstruir as imagens, execute:
docker-compose up -d --build-
Se encontrar problemas de conexão entre frontend e backend, verifique se:
- Os containers estão rodando (
docker-compose ps) - As portas estão corretamente mapeadas
- O CORS está configurado corretamente no backend
- Os containers estão rodando (
-
Se o frontend não carregar, verifique:
- Os logs do container do frontend
- Se todas as dependências foram instaladas corretamente
-
Se o backend não responder, verifique:
- Os logs do container do backend
- Se a aplicação Spring Boot inicializou corretamente
Este projeto está sob a licença MIT. Veja o arquivo LICENSE para mais detalhes.