A fully functional, production-ready e-commerce platform with role-based authentication, payment integration, and comprehensive store management capabilities.
- Frontend: React (Vite, TypeScript), Tailwind CSS, Redux Toolkit
- Backend: Node.js, Express.js, MongoDB
- State Management: Redux Toolkit
- Payment Integration: PayPal
- Authentication: JWT, Role-based access control
- Image Handling: Cloudinary/Multer
- Icons: React Icons
- Create and manage product categories
- Add, edit, and delete products
- View sales analytics and metrics
- Manage and process orders (approve/cancel)
- View and manage user accounts
- Access to comprehensive admin dashboard
- Browse and search products
- Add products to cart and wishlist
- Complete purchases with PayPal integration
- View order history and tracking
- Manage personal profile and preferences
- Favorite products for later viewing
- Browse products and categories
- View product details and reviews
- Favorite products (saved in local storage)
- Responsive shopping experience across devices
- Modern UI/UX: Clean, responsive design with Tailwind CSS
- Product Carousel: Featured products showcase
- Advanced Filtering: Search by category, price range, ratings
- Wishlist Functionality: Save favorites without login
- Payment Integration: Secure PayPal checkout process
- Order Management: Complete order lifecycle tracking
- Admin Dashboard: Analytics, sales reports, and user insights
- Role-Based Authentication: Secure access control
- Responsive Design: Optimized for all device sizes
-
Clone the repository
git clone https://github.com/aryanad/mern-ecommerce-store.git cd mern-ecommerce-store -
Install dependencies
# Install backend and root dependencies npm i --legacy-peer-deps # Install frontend dependencies cd ../frontend npm i --legacy-peer-deps
-
Set up environment variables
Create a
.envfile in the backend directory:NODE_ENV=development MONGODB_URI=<your_mongodb_connection_string> JWT_SECRET=<your_jwt_secret> PAYPAL_CLIENT_ID=<your_paypal_client_id> PORT=5000 -
Run the development server
# Start the server npm run dev -
Open your browser
Visit: http://localhost:5173
Admin Dashboard
Edit Product
Favorite Products
Manage Users
Order Placement
Paypal Integration
Product Detail
Product List 
- Visitors: Browse products, add to wishlist, create account to purchase
- Users: Complete purchases, track orders, manage wishlist and profile
- Admins: Manage inventory, process orders, view analytics, control users
🛒 A complete e-commerce solution with modern features, secure payments, and intuitive management tools.