Skip to content

mahmoudEwiis/React-ecommerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛒 React Ecommerce App

A full-featured e-commerce web application built with React. It provides a seamless shopping experience for users, including authentication, cart and wishlist management, and an admin dashboard for product, category, and user management.


📌 Description

This project is a modern e-commerce frontend built using React. It allows users to register, log in, browse products, manage favorites and shopping carts, and update their profiles. Admin users have access to an advanced dashboard to manage the entire store content.


🚀 Features

  • 🔐 Authentication (Register/Login)
  • 🛍️ Product Listing & Details
  • 📦 Add to Cart with Quantity Control
  • ❤️ Favorite/Wishlist Functionality
  • ⚡ Product filtering by category & Price Range & Title.
  • ⚡ Product sorting by price and name.
  • 🔄 Using Context API to Share Data.
  • 👤 User Profile with Avatar Upload
  • 🛠️ Admin Dashboard (Products, Categories, Users Management)
  • 🔄 Protected Routes for Authenticated Users and Admins
  • 🔄 Global error handling with Axios interceptors
  • 📸 Image Upload for Products and Avatars
  • 🎨 Responsive UI with Bootstrap & Custom Styling
  • ⚡ Toast Notifications with react-hot-toast
  • 🔄 Smooth animations using framer-motion

🧱 Built With

Please leave a ⭐ as motivation if you liked the implementation 😄


📡 Backend API

This project consumes the Platzi Fake Store API, which supports:

  • /api/v1/auth/login — Login
  • /api/v1/users — User CRUD
  • /api/v1/products — Products CRUD
  • /api/v1/categories — Categories CRUD
  • /api/v1/files/upload — Image Upload

🧪 You can explore the full Swagger documentation here:
https://api.escuelajs.co/docs/


🧪 Usage

# 1. Clone the repository
git clone https://github.com/mahmoudEwiis/React-ecommerce.git
cd React-ecommerce

# 2. create a .env file in the root directory
REACT_APP_API_URL = 

# 3. Install dependencies
npm install

# 4. Run the development server
npm run Start

Releases

No releases published

Packages

 
 
 

Contributors