Welcome to E-Shop, a full-stack, enterprise-grade e-commerce web application specifically tailored for high-end electronics. This project features a robust Spring Boot backend coupled with a modern, dynamic, and responsive React frontend (built using Vite and styled with Tailwind CSS).
- 🛒 Premium Catalog: Clean, modern electronics catalog with realistic branding, product descriptions, pricing, and high-quality studio photography.
- 🛠️ Admin Dashboard: Full admin capabilities to manage categories, products (add, edit, delete, upload images), orders, and users.
- 📱 Smooth User Experience: Equipped with Lenis Smooth Scroll and seamless page transitions.
- 💳 Stripe Payment Integration: Secure test checkout flow using Stripe integration.
- 🔒 Secure Authentication: Robust security model powered by Spring Security and JWT (JSON Web Tokens) for session management.
- 📦 Cart & Order Management: Comprehensive state-managed shopping cart, user order history, and order placement flows.
- Framework: Spring Boot (Java 21)
- Security: Spring Security + JWT Authentication
- Database: H2 (In-memory for development/testing) / JPA / Hibernate
- Build Tool: Maven
- Core: React (Vite)
- Styling: Tailwind CSS + Material UI icons
- State Management: Redux Toolkit (Redux-Thunk)
- Scroll Engine: Lenis Smooth Scroll
- HTTP Client: Axios
E-Shop/
├── sb-ecom/ # Spring Boot Backend Project
│ ├── src/ # Java Source Code & Resources
│ └── pom.xml # Maven Dependency Config
│
└── ecom-frontend/ # React Vite Frontend Project
├── src/ # Components, Redux Store, Styles
├── package.json # NPM Package Dependencies
└── vite.config.js # Vite Configuration
- Java: JDK 21 or higher
- Node.js: v18 or higher
- Maven: Installed or using
mvnwwrapper
- Configure environment variables (if any) or edit
application.properties. - Set your Stripe Secret Key:
$env:STRIPE_SECRET_KEY="your_stripe_secret_key"
- Run the application:
./mvnw.cmd spring-boot:run
- The server will start on
http://localhost:8080.
- Navigate to the directory:
cd ecom-frontend - Install packages:
npm install
- Run in development mode:
npm run dev
- Access the web application at
http://localhost:5173.
For inquiries, support, or feedback, feel free to reach out:
- Developer: Mihir Singh
- Email: mihir304singh@gmail.com
- Location: Mumbai, India