A cutting-edge e-commerce platform built with modern technologies, delivering seamless performance and exceptional user experiences.
- React: Efficient UI rendering for dynamic interfaces.
- React Router DOM: Smooth navigation between application pages.
- React Query: Advanced data fetching, caching, and synchronization.
- Redux Toolkit: Streamlined state management for scalable applications.
- Pagination: Effortless browsing across product collections.
- Search & Filters: Quick and precise product discovery.
- Product Catalog: Browse and explore products with intuitive navigation and advanced search.
- Filters: Refine results based on categories, price ranges, and more.
- Detailed Product Pages: View comprehensive product descriptions and reviews.
- Cart Management: Add, remove, or edit items effortlessly.
- Favorites: Save products for future reference.
- Order History: Track and manage your previous purchases from a dedicated order page.
- Payment Integration: Secure and reliable payment processing powered by Razorpay.
- Receipt Download: Users can download detailed purchase receipts.
- Coupon System: Integrated coupon functionality for discounts and promotions.
- New User Special Coupon: Exclusive discounts for first-time users.
Achieves 90%+ test coverage with:
- React Testing Library: Ensuring robust component behavior.
- Snapshot Testing: Verifying consistent UI.
- Playwright: End-to-end testing with insightful reports.
- Allure Report: Comprehensive and user-friendly test result reporting.
Use the following test cards for verifying Razorpay integration:
Card Network | Card Number | CVV | Expiry Date |
---|---|---|---|
Mastercard | 5267 3181 8797 5449 | Any 3 digits | Any future date |
Visa | 4111 1111 1111 1111 | Any 3 digits | Any future date |
- Unit and Integration Tests:
npm run test
- Playwright Tests:
npm run playwright
- Generate and Open Playwright Report:
npm run playwright:report
-
Clone the repository:
git clone <repository-url>
-
Navigate to the project directory:
cd ecommerce-app
-
Install dependencies:
npm install
-
Start the development server:
npm start