A feature-rich, modern e-commerce web application built with React
๐ Live Demo โข ๐ Features โข ๐ Getting Started โข ๐ธ Screenshots
ShopperX is a fully functional e-commerce frontend application showcasing professional-grade React development. Built with modern best practices, it demonstrates real-world implementation of state management, routing, authentication flows, and responsive UI design โ perfect for portfolios and technical interviews.
- Product Catalog โ Browse products by category (Men, Women, Kids)
- Product Search โ Real-time search functionality with instant results
- Quick View Modal โ Preview products without leaving the page
- Product Details โ Comprehensive product pages with size selection & quantity controls
- Related Products โ Smart product recommendations
- Save Favorites โ Add/remove products to your wishlist
- Persistent Wishlist โ Wishlist count displayed in navbar
- Dedicated Wishlist Page โ Manage all saved items in one place
- Smart Cart โ Add, remove, update quantities
- Cart Summary โ Real-time price calculations
- Empty Cart State โ Beautiful UI for empty cart
- Checkout Flow โ Complete checkout page with order summary
- Login/Signup โ Toggle between login and signup modes
- Form Validation โ Real-time input validation with error messages
- User Profile Dropdown โ Quick access to account features
- Social Login UI โ Google sign-in button (UI ready)
- Toast Notifications โ Elegant success/error/info messages
- Smooth Animations โ CSS transitions & hover effects throughout
- Scroll Management โ Smart scroll-to-top behavior
- Responsive Design โ Mobile-first, works on all devices
| Category | Technologies |
|---|---|
| Framework | React 18 with Vite |
| Routing | React Router DOM v6 |
| State Management | Context API + useReducer pattern |
| Styling | CSS3 with Flexbox & Grid |
| Animations | CSS Transitions & Keyframes |
| Build Tool | Vite (Lightning fast HMR) |
| Deployment | Vercel |
shopperx-web/
โโโ ๐ public/
โโโ ๐ src/
โ โโโ ๐ assets/ # Images, icons, product data
โ โโโ ๐ Components/
โ โ โโโ ๐งฉ Navbar/ # Navigation with search & user menu
โ โ โโโ ๐งฉ SearchBar/ # Real-time product search
โ โ โโโ ๐งฉ Hero/ # Landing page banner
โ โ โโโ ๐งฉ Item/ # Product card with quick actions
โ โ โโโ ๐งฉ QuickView/ # Product preview modal
โ โ โโโ ๐งฉ ProductDisplay/ # Detailed product view
โ โ โโโ ๐งฉ CartItems/ # Shopping cart management
โ โ โโโ ๐งฉ Toast/ # Notification system
โ โ โโโ ๐งฉ Popular/ # Popular products section
โ โ โโโ ๐งฉ NewCollections/ # New arrivals section
โ โ โโโ ๐งฉ Offers/ # Promotional banners
โ โ โโโ ๐งฉ Footer/ # Site footer
โ โ โโโ ๐งฉ ...more
โ โโโ ๐ Context/
โ โ โโโ ๐ ShopContext.jsx # Global state (cart, wishlist, auth)
โ โโโ ๐ Pages/
โ โ โโโ ๐ Shop.jsx # Home page
โ โ โโโ ๐ ShopCategory.jsx # Category browsing
โ โ โโโ ๐ Product.jsx # Product detail page
โ โ โโโ ๐ Cart.jsx # Shopping cart
โ โ โโโ ๐ Wishlist.jsx # Saved items
โ โ โโโ ๐ Checkout.jsx # Checkout flow
โ โ โโโ ๐ LoginSignUp.jsx # Authentication
โ โโโ ๐ App.jsx # Main app with routing
โ โโโ ๐ main.jsx # Entry point
โโโ ๐ package.json
โโโ ๐ vite.config.js
โโโ ๐ README.md
| Concept | Implementation | Purpose |
|---|---|---|
| useState | Forms, modals, menus | Local component state management |
| useContext | ShopContext | Global state for cart, wishlist, auth |
| useEffect | Scroll behavior, toasts | Side effects & lifecycle management |
| useNavigate | Post-login redirect | Programmatic navigation |
| useParams | Product pages | URL parameter extraction |
| Custom Hooks | Context consumers | Reusable stateful logic |
| Conditional Rendering | Auth forms, empty states | Dynamic UI based on state |
| Component Composition | All components | Building complex UIs from simple parts |
| Props Drilling vs Context | Mixed approach | Optimal data flow patterns |
- Node.js 16+
- npm or yarn
# Clone the repository
git clone https://github.com/your-username/shopperx-web.git
# Navigate to project directory
cd shopperx-web
# Install dependencies
npm install
# Start development server
npm run devThe app will be running at http://localhost:5173
npm run build
npm run previewClick to view screenshots
Hero section with featured products and categories
Grid layout with quick view, wishlist, and cart actions
Size selection, quantity controls, and related products
Full cart management with price summary
Saved items with quick add-to-cart
Clean login/signup with form validation
- Backend API integration (Node.js + MongoDB)
- Payment gateway (Stripe/Razorpay)
- Order history & tracking
- Product reviews & ratings
- Admin dashboard
- PWA support
Contributions are welcome! Feel free to:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit changes (
git commit -m 'Add amazing feature') - Push to branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Built with โค๏ธ by Paras Rawat
โญ Star this repo if you found it helpful!