Um sistema Full-Stack simples e eficiente para gerenciamento de alimentos, construído com um backend robusto em Spring Boot e uma interface de usuário moderna utilizando HTML, CSS e JavaScript puro (Vanilla JS).
- Cadastrar Alimentos: Adicione novas comidas informando nome, quantidade e data de validade.
- Listar Alimentos: Visualize todos os itens cadastrados em tempo real em uma interface baseada em cards.
- Integração via API REST: Comunicação assíncrona entre o frontend e o backend.
- Java
- Spring Boot (Spring Web, Spring Data JPA)
- Banco de Dados: H2 Database (banco em memória para testes) / Relacional.
- Arquitetura: Padrão de camadas (Controllers, Services, Repositories, Models).
- CORS: Configurado para permitir a comunicação com o frontend local.
- HTML5: Estruturação semântica da página.
- CSS3: Estilização responsiva, uso de variáveis CSS (
:root), flexbox e design limpo (clean UI). - JavaScript (Vanilla): Consumo da API REST utilizando a
Fetch APIpara buscar e enviar dados em formato JSON.
O projeto está dividido em duas pastas principais para manter as responsabilidades separadas:
GeladeiraJava/
├── Backend/ # API em Spring Boot (IntelliJ)
│ ├── src/main/java/... # Código fonte Java
│ └── pom.xml # Dependências do Maven
└── Frontend/ # Interface Web (VS Code)
├── index.html # Estrutura da página principal
├── style.css # Estilos visuais
└── app.js # Lógica de comunicação com a API (GET, POST)