Skip to content

Sidhant-gupta07/Youtube-Clone

Repository files navigation

YouTube Clone

This is a YouTube clone project built using React, Vite, Redux, Tailwind CSS, JavaScript, props, Context API, and debouncing. The application mimics the core functionalities of YouTube, including video listing, searching, and viewing.

Table of Contents

  • Features
  • Installation
  • Usage
  • Technologies Used
  • Contributing
  • License

Features

  • Video Listing: Display a list of videos fetched from an API.
  • Search Functionality: Search for videos using the search bar.
  • Video Player: Watch videos within the application.
  • Responsive Design: Fully responsive design using Tailwind CSS.
  • Debouncing: Implemented debouncing for optimized search input handling.

Installation

  1. Clone the repository
    git clone https://github.com/yourusername/youtube-clone.git
    cd youtube-clone
            
  2. Install dependencies
    npm install
  3. Start the development server
    npm run dev
  4. Open your browser and navigate to http://localhost:3000 to see the app in action.

Usage

  • Homepage: Displays a list of videos.
  • Search: Use the search bar to find videos.
  • Video Player: Click on a video to play it.

Technologies Used

  • React: A JavaScript library for building user interfaces.
  • Vite: A fast development build tool.
  • Redux: A state management library for JavaScript applications.
  • Tailwind CSS: A utility-first CSS framework.
  • JavaScript (ES6+): Modern JavaScript features.
  • Props: Passing data between components.
  • Context API: Managing global state.
  • Debouncing: Optimizing search input handling.

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

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

License

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