Back to projects

simple-cloud-store

Full-stack cloud store sandbox with a React/Vite storefront and Java microservices behind a Vert.x gateway. The project compares Spring Boot, Quarkus, Vert.x, and React service styles in one store flow.

Brief

Cloud store sandbox with React and Java microservices

Demonstrates: Microservices, gateway composition, file/store flow, Docker infrastructure

Key Features

  • Combines a React 19 and Vite storefront with catalog, inventory, and gateway services
  • Uses Spring Boot for catalog, Quarkus for inventory, and Vert.x as the API/static edge
  • Runs the local stack with Docker Compose, PostgreSQL, gateway routing, and documented service checks

Problem

Compare multiple Java service styles in one coherent storefront scenario instead of isolated toy examples.

Architecture

A React/Vite storefront calls a Vert.x gateway, which composes catalog and inventory services backed by PostgreSQL and local Docker infrastructure.

Key decisions

  • Use different Java frameworks per service to compare service boundaries and runtime styles.
  • Put composition behind a gateway so the frontend depends on one stable API edge.

My role

  • Designed the service split, gateway route, frontend integration, and local Docker stack.

Tech stack

JavaSpring BootQuarkusVert.xReactVitePostgreSQLDocker

Future improvements

  • Add contract tests between gateway and backend services.
  • Introduce tracing and production-ready deployment manifests.
Full-stack cloud store sandbox with a public React/Vite/TypeScript storefront and three Java microservices behind a Vert.x gateway. The project is a portfolio demo for comparing Spring Boot, Quarkus, Vert.x, and React service styles in one store flow. The current frontend is `web-react`, while the backend stack includes a Catalog API, an Inventory API, a Gateway API/static edge, and PostgreSQL. Gateway combines catalog and inventory calls for `/api/products`. The web service is the current public frontend and is based on React, Vite, TypeScript, PatternFly, and Express.