Sistema inteligente para organização de compras semanais e mensais. MenuMaster é uma aplicação fullstack desenvolvida para gerar listas de compras automáticas, calculando todos os ingredientes necessários com base nas receitas cadastradas e no período de tempo selecionado pelo usuário.
Com MenuMaster, você planeja melhor suas refeições, evita desperdícios e garante que todos os itens necessários estarão na sua lista de compras!
- Java 17
- Spring Boot 3.x
- Spring Security (JWT Authentication)
- Spring Data JPA
- HyperSQL Database (HSQLDB) (banco de dados em memória)
- React 18 (com Vite)
- TypeScript
- JavaScript
- Axios
- React Query
- Bootstrap 5
- FullCalendar
- Java 17
- Node.js e NPM
- Maven (ou Maven Wrapper
mvnw
incluído)
🛑 Não é necessário configurar banco de dados manualmente! O projeto usa HyperSQL (HSQLDB), um banco de dados em memória.
Home Page • Gerar Lista de Compras
Escolher Data • Detalhes da Receita
Detalhes da Lista de Compras • Lista de Receitas
Listas de Compras • Criar Nova Receita
Página de Registro • Perfil do Usuário
git clone https://github.com/seu-usuario/MenuMaster.git
cd MenuMaster
Com Maven instalado:
mvn spring-boot:run
Ou usando Maven Wrapper:
./mvnw spring-boot:run
O backend estará disponível em:
http://localhost:8081
cd frontMenuMaster
npm install
npm run dev
O frontend estará disponível em:
http://localhost:5173
MenuMaster/
├── frontMenuMaster/ # Frontend (React Vite)
│ ├── src/
│ ├── public/
├── MenuMaster/ # Backend (Spring Boot)
│ ├── src/main/java/
│ ├── src/main/resources/
│ └── pom.xml
└── README.md
- A autenticação é feita via JWT.
- Após o login, um token é armazenado no frontend para autenticação de todas as requisições protegidas.
- Endpoints públicos e privados são configurados no
SecurityConfig
do backend. - A Autenticação também pode ser feita via Google ou Github
- Cadastro e listagem de receitas
- Cadastro e associação de ingredientes
- Organização de receitas por data (calendário)
- Geração de lista de compras automatizada
- Sistema de login e registro com segurança JWT
- Possibilidade de autenticação com dois fatores (2FA)
- Interface intuitiva e responsiva
Este projeto está licenciado sob a licença MIT.
Sinta-se à vontade para usar, estudar e modificar!
Se gostou do projeto, deixe uma estrela ⭐ no repositório!
Contribuições, sugestões e feedbacks são muito bem-vindos.