Full-stack project
E-Shop
A React storefront backed by a Spring Boot API for customer, seller, and administrator workflows.
Java · Spring Boot · React · PostgreSQL · Stripe
Overview
The frontend covers product discovery, cart and checkout, order history, and separate seller and administrator dashboards. The API manages authentication, catalogue data, orders, and payments.
Architecture
The React storefront communicates with a Spring Boot REST API. Authentication uses an HTTP-only JWT cookie, with a CSRF token for state-changing requests.
Frontend · Vercel
React storefront
Backend · Docker / Northflank
Spring Boot API
Controllers · Services · JPA
PostgreSQL
Neon
Application data
Stripe
Payment API
Payment verification
Cloudinary
Media storage
Product images
Engineering decisions
Authentication uses an HTTP-only cookie and CSRF protection. The server calculates checkout totals from the cart, verifies Stripe payments before creating orders, and locks product rows while updating stock. Dashboard sorting and pagination live in the URL so the view survives navigation and refreshes.
Testing and delivery
The repositories include frontend and backend test suites and GitHub Actions checks. The React app is deployed on Vercel, while the API runs as a Docker service on Northflank with PostgreSQL on Neon.