A fully-featured, production-ready eCommerce web application built using modern technologies, offering secure authentication, role-based access, payment integration, and admin management functionalities.
Authentication: Login, signup, and token-based session management
Product Listing: With category filters and search functionality
Cart Management: Add/remove products, quantity updates
Address Handling: Capture and manage shipping addresses
Checkout & Orders: Place orders and track history
Role based access - Admin, seller, user
Real-time payments using Stripe
Backend | Frontend |
---|---|
Spring Framework | React.js |
Spring Boot | JSX (JavaScript XML) |
Java | Redux |
Spring Security | React Hooks (useState, useEffect, useRef, useContext) |
JSON Web Tokens (JWT) | Custom Hooks |
Role-Based Access Control (RBAC) | Tailwind CSS |
Custom Authentication | Responsive Design |
JPA (Jakarta Persistence API) | React Router |
Hibernate ORM | React Router Hooks |
PostgreSQL | React Hook Forms |
MySQL | Stripe Payment Gateway Integration |
Database Relationships & Entity Management | Role-Based Access Control (RBAC) |
Lombok | Lots of React library's |
Maven / Gradle | |
IntelliJ IDEA | |
REST API Development | |
Swagger API Documentation | |
Backend Validations | |
Pagination and Sorting | |
AWS Deployment | |
Spring AI Framework | |
Payment Processing |
- Secure login & registration using Spring Security 6 and JWT
- Role-based access for customers/users, sellers and admin
- Developed RESTful APIs with Spring Boot, Spring MVC, and Spring Data JPA (Hibernate) for persistence, integrated with PostgreSQL/MySQL databases.
- Implemented role-based access control (Admin, Seller, Customer/User) with Spring Security & JWT, along with pagination, sorting, validation, search functionality, and centralized exception handling.
- Built a product categories module with filtering and integrated Stripe API for secure, real-time payment processing
- Handles business logic, validation, and data persistence with MySQL
- Fully responsive user interface built with React.js
- Redux used for global state management (authentication, cart, etc.)
- Seamless integration with backend APIs
- Real-time payment processing using Stripe's API
- Integrated securely for both test and live modes
Temporarily deployed on AWS for learning purpose, But in future i can deploy on vercel, render ensuring scalability and high availability
[More Comming Soon...]
- Intellij and VS Code
- Node.js
- Java 21
- MySQL or PostgresSQL
- Maven
- cd sb-ecom-backend
- configure application.properties
- mvn clean install
- mvn spring-boot:run
- cd ecom-frontend
- npm install
- npm start
- Stripe Setup
- Create a Stripe account
Replace test keys in the frontend/backend with your own
ecommerce-project/
β
βββ sb-ecom-backend/
β βββ src/main/java/... (Spring Boot code)
β
βββ ecom-frontend/
β βββ src/ (React components)
π€ Contributing
Contributions are welcome! Feel free to fork the project and submit a pull request.
This project is licensed under ------