FreshStock 2026

Aplicação web Full Stack para gerenciamento de produtos e categorias de estoque. O projeto integra uma interface construída com React e TypeScript a uma API REST desenvolvida em Java com Spring Boot, utilizando Spring Data JPA e MySQL para persistência de dados. A aplicação contempla operações de CRUD, validação de entradas, consultas relacionais e regras de negócio para manter a consistência dos dados.

Linguagem(ns)

TypeScript, Java e SQL

Conceitos abordados

Arquitetura Full Stack, Separação de Responsabilidades, Padrão Repository, APIs REST, DTOs, ORM, Relacionamentos entre Entidades, Validação de Dados, Regras de Negócio e Persistência Relacional.

Tech Stack

ReactTypeScriptSCSSJava 21Spring BootSpring Data JPAHibernateMySQLMavenREST API

Sobre o projeto

/projects/fresh-stock/demo.mp4

FreshStock: Gestão de Estoque Full Stack, API REST e Persistência com MySQL 📦💻

O desenvolvimento do FreshStock tem como objetivo construir um sistema de gerenciamento de estoque que combine uma interface intuitiva com uma API responsável pela manipulação e persistência dos dados. Além das funcionalidades de cadastro, o projeto explora a separação de responsabilidades entre as camadas da aplicação e a implementação de regras de negócio. Nesta implementação, os principais pontos técnicos são: - Arquitetura Full Stack e Separação de Responsabilidades: organizei o projeto em uma camada de interface web e uma API backend independente. Essa separação permite evoluir a experiência do usuário e as regras de negócio sem concentrar toda a lógica em uma única camada. - Gerenciamento de Produtos e Categorias: implementei operações de criação, consulta, atualização e exclusão de produtos e categorias, além da consulta de produtos filtrados por categoria. Os dados dos produtos incluem nome, preço, quantidade em estoque e vínculo com sua categoria. - API REST com Java e Spring Boot: desenvolvi controllers responsáveis por expor os endpoints da aplicação e services que concentram as operações de negócio. A organização em controllers, services e repositories facilita a manutenção e a evolução da API. - Persistência Relacional com Spring Data JPA e MySQL: utilizei entidades JPA para representar produtos e categorias, com relacionamento entre elas, e repositories baseados em JpaRepository para executar operações de persistência. O Hibernate realiza o mapeamento objeto-relacional. - Validação de Dados e Integridade de Negócio: utilizei Jakarta Validation para validar campos obrigatórios, preços positivos e quantidades não negativas. Também implementei uma regra que impede a exclusão de categorias que possuam produtos associados, evitando a remoção indevida de registros relacionados. - Consultas e Indicadores por Categoria: desenvolvi uma consulta JPQL com agregação e relacionamento entre entidades para retornar a quantidade de produtos cadastrados em cada categoria. Dessa forma, o backend fornece esse indicador sem exigir que o frontend percorra individualmente todos os produtos para calculá-lo. - Contratos de Dados com DTOs: utilizei objetos de transferência de dados para receber as informações de produtos e categorias e para estruturar a resposta das categorias. Essa abordagem permite controlar os dados recebidos e expostos pela API, reduzindo o acoplamento entre a interface e as entidades de persistência.

contato

Gostou deste projeto? Vamos criar algo juntos

Estou disponível para projetos freelance e oportunidades presenciais, híbridas ou remotas. Vamos conversar sobre o que você quer construir.

← Ver outros projetos