Skip to content

Navybits/academy_web_level_2_ecommerce_starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ShopHub - React E-commerce Project

A modern e-commerce web application built with React, and Tailwind CSS. This project serves as a learning resource for students to understand how to build a full-featured online shopping platform.

🔗 Live Demo

🚀 Features

  • User authentication (sign up/sign in)
  • Product browsing and filtering
  • Shopping cart management
  • Favorites/wishlist functionality
  • Checkout process
  • Responsive design
  • Local storage persistence

🛠️ Technologies Used

  • React 18
  • Tailwind CSS
  • React Router DOM
  • Lucide React (Icons)
  • Vite (Build Tool)

📋 Prerequisites

  • Node.js (v16 or higher)
  • npm or yarn
  • Basic knowledge of React
  • Understanding of CSS and Tailwind
  • Git installed on your machine

🏗️ Project Structure

src/
├── components/ # Reusable UI components
├── lib/ # Utility functions and configurations
├── pages/ # Application pages/routes
└── App.tsx # Root component

📥 Getting Started with GitHub

  1. Fork the Repository

    • Visit the GitHub repository
    • Click the "Fork" button in the top-right corner
    • This creates your own copy of the project
  2. Clone Your Fork

    git clone https://github.com/your-username/shophub.git
    cd shophub
  3. Create a New Branch

    git checkout -b feature/your-feature-name
  4. Install Dependencies

    npm install
  5. Start Development Server

    npm run dev

🔄 Git Workflow

  1. Make Changes

    • Work on your feature or bug fix
    • Keep commits small and focused
  2. Commit Your Changes

    git add .
    git commit -m "Description of changes"
  3. Keep Your Fork Updated

    # Add the original repository as upstream
    git remote add upstream https://github.com/original-owner/shophub.git
    
    # Fetch and merge updates
    git fetch upstream
    git merge upstream/main
  4. Push Changes

    git push origin feature/your-feature-name
  5. Create Pull Request

    • Go to your fork on GitHub
    • Click "New Pull Request"
    • Select your feature branch
    • Describe your changes
    • Submit the pull request

📚 Learning Objectives

  1. React Fundamentals

    • Component composition
    • Hooks usage (useState, useEffect)
    • Custom hooks
    • Props and state management
  2. State Management

    • Context
    • State persistence
    • Complex state updates
  3. Routing

    • Route configuration
    • Protected routes
    • Navigation and params
  4. UI/UX Design

    • Responsive layouts
    • Tailwind CSS usage
    • Component styling
    • User interaction patterns

📝 Project Tasks

  1. Setup and Configuration

    • Initialize project with Vite
    • Set up Tailwind CSS
    • Install dependencies
  2. Authentication System

    • Implement sign up/sign in forms
    • Create auth store
    • Add protected routes
    • Handle user sessions
  3. Product Management

    • Create product listing
    • Implement filtering and search
    • Add product details view
    • Handle product categories
  4. Shopping Cart

    • Create cart functionality
    • Implement quantity updates
    • Calculate totals
    • Persist cart data
  5. Favorites System

    • Add favorite toggling
    • Create favorites page
    • Implement persistence
    • Handle user-specific favorites
  6. Checkout Process

    • Create checkout form
    • Implement order summary
    • Add form validation
    • Handle order submission

🎯 Challenge Ideas

  1. Add product reviews and ratings
  2. Implement a search functionality
  3. Add payment gateway integration
  4. Create an admin dashboard
  5. Add product categories management
  6. Implement user profiles
  7. Add order history
  8. Create a wishlist sharing feature

🤝 Contributing

  1. Fork the project
  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.

Good Luck

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published