Skip to content

A modern, fully responsive e-commerce web application built with React.js, Vite, and Tailwind CSS. This project showcases a complete online shopping experience with product browsing, cart management, and a clean, professional UI design.

License

Notifications You must be signed in to change notification settings

jefercort/e-commerce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

32 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ›οΈ E-Commerce Web Shop

A modern, fully responsive e-commerce web application built with React.js, Vite, and Tailwind CSS. This project showcases a complete online shopping experience with product browsing, cart management, and a clean, professional UI design.

πŸš€ Live Demo

View Live Demo

✨ Features

Core Functionality

  • πŸͺ Product Catalog - Browse through a variety of products with detailed information
  • πŸ” Product Search - Find products quickly with search functionality
  • πŸ“± Responsive Design - Seamless experience across all devices (mobile, tablet, desktop)
  • πŸ›’ Shopping Cart - Add, remove, and update product quantities
  • πŸ’° Price Calculation - Automatic subtotal and total price updates
  • 🏷️ Product Categories - Filter products by categories
  • ⭐ Product Details - View detailed product information including images, descriptions, and prices

User Experience

  • 🎨 Modern UI/UX - Clean and intuitive interface using Tailwind CSS
  • ⚑ Fast Performance - Optimized with Vite for quick load times
  • πŸ”„ Real-time Updates - Cart updates instantly without page refresh
  • πŸ“Š Product Filtering - Sort and filter products by price, category, or rating
  • πŸ’³ Checkout Process - Streamlined checkout flow (UI demonstration)

πŸ› οΈ Technologies Used

Frontend

  • React.js 18 - Modern JavaScript library for building user interfaces
  • Vite - Next generation frontend tooling for fast development
  • Tailwind CSS - Utility-first CSS framework for rapid UI development
  • React Router - For seamless navigation between pages
  • React Context API - State management for cart and user data

Additional Libraries

  • React Icons - Beautiful icons for enhanced UI
  • Axios - For API calls (if using external API)
  • React Hot Toast - Elegant notifications for user actions

πŸ“‹ Prerequisites

Before you begin, ensure you have the following installed:

πŸ”§ Installation & Setup

  1. Clone the repository

    git clone https://github.com/jefercort/e-commerce.git
  2. Navigate to the project directory

    cd e-commerce
  3. Install dependencies

    npm install
    # or
    yarn install
  4. Start the development server

    npm run dev
    # or
    yarn dev
  5. Open your browser

    Navigate to http://localhost:5173 to view the application

πŸ“ Project Structure

e-commerce/
β”œβ”€β”€ public/                  # Public assets
β”‚   └── images/             # Product images
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ assets/             # Static assets (images, fonts)
β”‚   β”œβ”€β”€ components/         # Reusable React components
β”‚   β”‚   β”œβ”€β”€ Cart/          # Shopping cart components
β”‚   β”‚   β”œβ”€β”€ Products/      # Product listing components
β”‚   β”‚   β”œβ”€β”€ Layout/        # Layout components (Header, Footer)
β”‚   β”‚   └── UI/            # UI components (Buttons, Cards)
β”‚   β”œβ”€β”€ context/           # React Context for state management
β”‚   β”œβ”€β”€ pages/             # Page components
β”‚   β”‚   β”œβ”€β”€ Home.jsx       # Homepage
β”‚   β”‚   β”œβ”€β”€ Shop.jsx       # Products page
β”‚   β”‚   β”œβ”€β”€ ProductDetail.jsx # Product detail page
β”‚   β”‚   └── Cart.jsx       # Shopping cart page
β”‚   β”œβ”€β”€ utils/             # Utility functions
β”‚   β”œβ”€β”€ App.jsx            # Main application component
β”‚   β”œβ”€β”€ index.css          # Global styles and Tailwind imports
β”‚   └── main.jsx           # Application entry point
β”œβ”€β”€ .eslintrc.cjs          # ESLint configuration
β”œβ”€β”€ .gitignore             # Git ignore file
β”œβ”€β”€ index.html             # HTML template
β”œβ”€β”€ package.json           # Project dependencies
β”œβ”€β”€ postcss.config.js      # PostCSS configuration
β”œβ”€β”€ tailwind.config.js     # Tailwind CSS configuration
β”œβ”€β”€ vite.config.js         # Vite configuration
└── README.md              # Project documentation

🎯 Core Components

Product Card

  • Displays product image, name, price, and rating
  • Quick add to cart functionality
  • Link to detailed product view

Shopping Cart

  • Real-time cart updates
  • Quantity adjustment controls
  • Remove items functionality
  • Price calculation
  • Checkout button

Product Filter

  • Filter by category
  • Sort by price (low to high, high to low)
  • Search functionality

πŸ’» Available Scripts

# Development
npm run dev             # Start development server with hot reload

# Build
npm run build          # Build for production
npm run preview        # Preview production build locally

# Code Quality
npm run lint           # Run ESLint for code linting
npm run format         # Format code with Prettier

🎨 Customization

Tailwind Configuration

Modify tailwind.config.js to customize:

  • Color scheme
  • Typography
  • Spacing
  • Breakpoints

Adding Products

Products can be added by:

  1. Updating the product data file/API
  2. Adding product images to the public folder
  3. Ensuring proper data structure is maintained

🚧 Future Enhancements

  • User authentication and accounts
  • Payment gateway integration
  • Order history and tracking
  • Product reviews and ratings
  • Wishlist functionality
  • Advanced filtering options
  • Admin dashboard for product management
  • Email notifications
  • Multi-language support
  • Dark mode toggle
  • Product recommendations
  • Inventory management
  • Discount codes and promotions

πŸŽ“ Learning Outcomes

This project demonstrates proficiency in:

  • React Development: Components, hooks, state management, routing
  • Modern CSS: Tailwind CSS utility classes, responsive design
  • E-commerce Concepts: Cart logic, product management, user flow
  • Build Tools: Vite configuration and optimization
  • Best Practices: Code organization, component reusability, performance optimization

🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ‘¨β€πŸ’» Author

Kevin Cortes

πŸ™ Acknowledgments

  • Design inspiration from modern e-commerce platforms
  • React community for excellent documentation
  • Tailwind CSS for the amazing utility-first framework
  • Vite for the blazing fast development experience

⭐ If you find this project useful, please consider giving it a star on GitHub!

πŸ”— View Live Demo | πŸ“ Report Bug | πŸ’‘ Request Feature

About

A modern, fully responsive e-commerce web application built with React.js, Vite, and Tailwind CSS. This project showcases a complete online shopping experience with product browsing, cart management, and a clean, professional UI design.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages