A modern and feature-rich Spring Boot web application that allows users to buy and sell digital products — including ebooks, music, and movies — via a secure, seamless, and intuitive marketplace.
| Admin | Explore | Purchased Items |
|---|---|---|
![]() |
![]() |
![]() |
- 🛒 Browse and purchase digital products (books, songs, movies)
- 👨💻 Vendor dashboard to upload and manage listings
- 🔍 Advanced search with filters and categories
- 💳 Secure checkout with Stripe integration
- 📂 Instant digital downloads post-purchase
- 🔐 JWT-based authentication & role-based access control
- 📈 Admin dashboard with sales & product analytics
- 📱 Responsive UI (mobile & desktop)
👤 Guest Browse products
🧑💼 Customer Buy products, leave reviews
🛍️ Vendor Upload/manage product listings
🛡️ Admin Manage users, products, view analytics
| Layer | Technologies |
|---|---|
| Backend | Spring Boot, Spring Security |
| Frontend | Thymeleaf |
| Database | MySQL |
| ORM | Spring Data JPA (Hibernate) |
| Authentication | JWT, Spring Security |
| File Storage | Local File System |
| Payment Gateway | Stripe |
| Testing | JUnit, Mockito |
| Dev Tools | Maven, Lombok |
- Java 17+
- Maven 3.6+
- MySQL
- Stripe API keys
- (Optional) AWS credentials (if upgrading to S3)
# Clone the repository
git clone https://github.com/princeantonyno1/zap-cart.git
cd zap-cart
# Copy environment variables template
cp .env.example .env
# Edit the .env file with your credentials
# Run the application
./mvnw spring-boot:run

