Welcome to Ecommerce, an online store that specializes in selling branded clothing. This project consists of two parts: the User Interface and the Admin Dashboard.
- Registration/Login Form: Displayed when users first land on the page.
- Post-login: Users are redirected to the homepage.
- The header includes:
- Logo (Link to Home)
- Links to other pages: Products, Home, and Search
- Cart Icon: Opens the cart modal
- User Avatar: Opens a dropdown menu with links to the Account page and a Logout button.
- Hero Section: Features a slider with images fetched from the backend.
- Category/Brand Sections: Allows users to filter by category or brand. Clicking on a category or brand redirects to a product listing page.
- Product Section: Displays product cards with:
- Image
- Price
- Add to Cart button
- Product cards are available on all pages displaying products.
- Modal View for Products: Clicking on a product card opens a modal showing:
- Product image, name, description, price, and reviews.
- Users can also leave a review with an input field and a submit button.
- Includes general information, contact details, and social media links.
- Sidebar: Features filters for brand and category.
- Load More Button: Allows loading more product cards.
- Search Input: Users can search for specific products.
- Displays all items added to the cart, with the total amount calculated.
- Users can adjust the quantity of items in the cart.
- Checkout Button: Redirects to the Account page.
- Includes tabs for user information and orders.
- Personal Information Form: Users can fill in personal and shipping details, then confirm the purchase.
- Orders Tab: Shows a table with the user’s orders and their status.
- Once an order is completed, users are redirected to the order success page.
- Upload Hero Section Images: Allows uploading images for the homepage slider.
- Displays all products in the system.
- Add Product Button: Allows admins to add new products to the store.
- Displays all customer orders.
- Edit Order Status: Admins can change the status of any order.
- Order Details: Admins can view detailed information about each order.
- React: Frontend framework for building a dynamic user interface.
- Redux Toolkit: For state management across the application.
- Tailwind CSS: For styling the components in a responsive and modular way.
- Node.js: Backend runtime environment.
- MongoDB: Database for storing product, order, and user data.
- Cloudinary: For managing and storing product images.
- PayPal: For handling payments and transactions.
- Authentication: Users can register and log in.
- Product Filtering: Filter products by brand or category.
- Cart System: Add products to the cart and proceed with checkout.
- Admin Dashboard: Manage products and orders.
- Responsive Design: The app is fully responsive, ensuring a seamless experience across all devices.
- Node.js
- MongoDB
-
Clone the repository:
git clone https://github.com/your-repo/ecommerce-shop.git
-
Install dependencies for both frontend and backend:
cd ecommerce-shop npm install
-
Set up your
.env
file for environment variables:- MongoDB URL
- Cloudinary API credentials
- PayPal credentials
-
Run the development servers:
npm run dev
-
Access the app at
http://localhost:3000
Enjoy shopping with Ecommerce!