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.
- πͺ 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
- π¨ 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)
- 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
- React Icons - Beautiful icons for enhanced UI
- Axios - For API calls (if using external API)
- React Hot Toast - Elegant notifications for user actions
Before you begin, ensure you have the following installed:
-
Clone the repository
git clone https://github.com/jefercort/e-commerce.git
-
Navigate to the project directory
cd e-commerce -
Install dependencies
npm install # or yarn install -
Start the development server
npm run dev # or yarn dev -
Open your browser
Navigate to
http://localhost:5173to view the application
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
- Displays product image, name, price, and rating
- Quick add to cart functionality
- Link to detailed product view
- Real-time cart updates
- Quantity adjustment controls
- Remove items functionality
- Price calculation
- Checkout button
- Filter by category
- Sort by price (low to high, high to low)
- Search functionality
# 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 PrettierModify tailwind.config.js to customize:
- Color scheme
- Typography
- Spacing
- Breakpoints
Products can be added by:
- Updating the product data file/API
- Adding product images to the public folder
- Ensuring proper data structure is maintained
- 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
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
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Kevin Cortes
- GitHub: @jefercort
- Portfolio: https://proserv.com.co
- 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