# Servers Manager Plataforma interna para catalogar servidores corporativos e facilitar consultas rápidas pelo time de desenvolvimento/analistas. Inclui backend em Spring Boot (JWT + refresh token em cookies) e frontend React/Vite consumindo os endpoints. ## Estrutura - `backend/`: API em Spring Boot 4 (Java 21), JWT stateless, cookies para auth. - `frontned/`: Front em React + Vite (TS), login integrado via cookies. - `postman_collection.json`: Coleção para testar autenticação e CRUDs de usuários/servidores. ## Requisitos - JDK 21 - Node 20+ (Yarn ou npm) ## Rodando local 1. **Backend** ```bash cd backend ./gradlew bootRun ``` Variáveis úteis: `JWT_SECRET` (>=32 chars), `DB_*` (Postgres). Por padrão usa `localhost:8080`. 2. **Frontend** ```bash cd frontned cp .env.example .env # ajuste VITE_BACKEND_URL se necessário yarn install # ou npm install yarn dev # ou npm run dev ``` Acesse `http://localhost:5173`. 3. **Testar via Postman** Importe `postman_collection.json`. Rode "Auth / Login" para setar cookies e seguir para os demais endpoints. ## Executar com Docker 1. Crie um `.env` na pasta `frontend/` se precisar sobrescrever variáveis (opcional). 2. Construa e suba tudo (Postgres + backend + frontend): ```bash docker compose up --build ``` 3. Endpoints expostos: - API: `http://localhost:8080` - Swagger UI: `http://localhost:8080/swagger-ui.html` - Frontend: `http://localhost:4173` Variáveis sensíveis (ex.: `JWT_SECRET`, credenciais do banco) podem ser ajustadas diretamente no `docker-compose.yml` ou via arquivos `.env`. ## Documentação específica - Backend: `backend/README.md` - Frontend: `frontned/README.md`