Zoo Management System
Sistema de gerenciamento de zoológico com Java + Spring Boot (API) e Vite + React + TypeScript (Node.js 18+) (Frontend).
Projeto para estudo aplicando: Spring Boot 3, JPA/Hibernate, PostgreSQL, Spring Security (Basic Auth), HTML/CSS/React e TypeScript, princípios SOLID e boas práticas.
Tecnologias
- Back-end
- Java 17
- Spring Boot 3.x (Web, Data JPA, Validation, Security)
- PostgreSQL
- Maven
- Front-end
- NodeJs
- Vite + React + TypeScript
- React Router DOM
- CSS
Funcionalidades
- CRUD de Animais e Habitats
- Relacionamento Animal ↔ Habitat
- Validação e tratamento de exceções
- Autenticação Basic (dev)
- Interface web para listagem e edição
Como executar
Pré-requisitos
- Java 17, Maven
- Node 18+ e npm
- PostgreSQL em execução
- Backend (Spring Boot)
- Configure seu banco no application.properties (URL, usuário, senha).
- Garanta o CORS habilitado no SecurityConfig.
- Execute:
cd .\Beckend
mvn spring-boot:run
- Frontend (Vite + React)
- Crie o arquivo de ambiente na raiz do Frontend:
Frontend/.env.local
Conteúdo:
VITE_API_URL=http://localhost:8080
VITE_API_USER=admin
VITE_API_PASS=admin123
- Garanta a tipagem do Vite:
// Frontend/src/vite-env.d.ts
/// <reference types="vite/client" />
cd .\Frontend
npm install
npm run dev