Back to projects

Software engineering · Full stack

Java Commerce Platform

A complete e-commerce application with an Angular frontend and Java Spring Boot backend, from authentication through checkout.

JavaSpring BootAngularREST APIs
Role
Full-Stack Software Engineer
Focus
System Design & API Engineering
Demo
Published on YouTube
03 · FULL-STACK SYSTEM

Modular commerce architecture

Clear boundaries across web client, business services, persistence, and integrations.

WEB CLIENTAngular + TypeScriptCatalog · Cart · Admin
APPLICATIONSpring Boot REST APIControllers · DTOs · Validation
PERSISTENCEMySQLUsers · Products · Orders
SECURITYSpring Security + JWTAuthentication · RBAC
DOMAINCatalog ServiceSearch · Filter · Inventory
DOMAINOrder ServiceCart · Checkout · Lifecycle
INTEGRATIONStripe APISecure payment processing
STORAGEAWS S3Product image management
DELIVERYDockerReproducible environments

Project overview

This project demonstrates my core software-engineering foundation beyond LLMs: a complete web application with clear frontend, backend, persistence, and integration boundaries. It covers the product catalogue, cart, checkout, administration, and notifications.

My contribution

I implemented the full-stack workflow, REST interfaces, authentication, data models, and responsive Angular UI, then documented the complete flow in a recorded demo.

System architecture

  • Angular and TypeScript for catalogue, search, cart, checkout, and admin UI
  • Java Spring Boot for REST APIs, business logic, and authentication
  • MySQL for products, users, orders, and inventory
  • JWT-based sessions and role-based access
  • Docker for reproducible local development and delivery

Engineering challenges

  • Secure authentication and authorization across frontend and backend boundaries
  • Consistent order and inventory data during checkout
  • Efficient catalogue queries with pagination, filtering, and database indexes

What this project demonstrates

  • Solid object-oriented Java and Spring engineering
  • API design and relational data modelling
  • End-to-end ownership across frontend and backend
  • Ability to demonstrate and document a complete system

Technologies

JavaSpring BootAngularTypeScriptMySQLJWTDockerREST

Project demonstration