This project is a Spring Boot–based E-Commerce REST API developed as Capstone 3 for the Year Up United Software Engineering pathway.
The API powers a Clothing Store web application, allowing users to:
- Browse products by category
- Search and filter products
- Authenticate using JWT
- Manage a persistent shopping cart
- Perform admin-level product and category management
The front-end application is prebuilt; all development and enhancements were completed on the backend API.
- Backend: Spring Boot (REST API)
- Database: MySQL
- Authentication: JWT (JSON Web Tokens)
- Data Access: DAO Pattern
- Testing: Postman / Insomnia
- User registration and login
- JWT token-based authorization
- Role-based access control (ADMIN vs USER)
- Browse all products
- Filter products by:
- Category
- Subcategory
- Price range
- View single product details
- Admin-only:
- Create products
- Update products (bug-fixed)
- Delete products
-
View all categories
-
View category by ID
-
Admin-only:
- Create categories
- Update categories
- Delete categories
-
View the credentials of the logged in user
-
Allow the logged in user to update their profile
- Fixed incorrect product filtering logic
- Resolved product duplication bug during updates
- Improved DAO query accuracy
git clone https://github.com/Phannul/capstone-3.git- InteliJ IDEA (recommended)
- used JDK 17+
- Open MySQL Wrokbench
- Run create_database.sql


