Skip to content

anup-jha26/youtube-clone

Repository files navigation

YouTube Logo YouTube Clone

A responsive and feature-rich YouTube clone built with React, Vite, TypeScript, and Tailwind CSS, powered by the YouTube Data API v3.

πŸš€ Live Site: youtube-clone26.netlify.app
πŸ“¦ GitHub Repo: github.com/anup-jha26/youtube-clone


πŸ“Έ Features

  • πŸ” Search videos, channels, and playlists
  • πŸ“Ί Watch video details with related content
  • πŸ“ Browse channel playlists and videos
  • πŸ’¬ View and toggle video comments
  • 🧠 Responsive design with Tailwind CSS
  • ⚑ Fast build with Vite and TypeScript
  • 🌐 Integrated with YouTube Data API v3

πŸ› οΈ Tech Stack

Tool Purpose
React + Vite Frontend framework & bundler
TypeScript Type-safe development
Tailwind CSS Utility-first styling
React Router Client-side routing
YouTube API Data source for content

πŸš€ Getting Started

1. Clone the Repository

git clone https://github.com/anup-jha26/youtube-clone.git
cd youtube-clone

2. Install Dependencies

npm install

3. Add Your API Key

Create a .env file in the root:

VITE_API_KEY=your_youtube_api_key_here

πŸ” You can get an API key from Google Cloud Console.

4. Run the App Locally

npm run dev

Open http://localhost:5173 in your browser.


πŸ§ͺ Build for Production

npm run build

The output will be in the dist/ folder.


🌐 Deployment

This project is deployed on Netlify.

Manual Deployment

  • Run npm run build
  • Upload the dist/ folder to Netlify

GitHub Integration

Netlify auto-deploys from:

https://github.com/anup-jha26/youtube-clone

Build settings:

  • Build command: npm run build
  • Publish directory: dist

πŸ“ Folder Structure (Simplified)

youtube-clone/
β”œβ”€β”€ dist/              # Production build output
β”œβ”€β”€ public/            # Static assets (logo, icons)
β”œβ”€β”€ src/               # Source code
β”‚   β”œβ”€β”€ Components/    # Reusable UI components
β”‚   β”œβ”€β”€ Hooks/         # Custom React hooks
β”‚   β”œβ”€β”€ Pages/         # Route-based views
β”‚   β”œβ”€β”€ assets/        # Local images/icons
β”‚   β”œβ”€β”€ utils/         # Helpers & types
β”‚   β”œβ”€β”€ App.tsx        # Root component
β”‚   β”œβ”€β”€ main.tsx       # Entry point
β”‚   └── index.css      # Global styles
β”œβ”€β”€ index.html         # HTML template
β”œβ”€β”€ package.json       # Project metadata
β”œβ”€β”€ vite.config.ts     # Vite configuration
β”œβ”€β”€ tsconfig.json      # TypeScript config
└── README.md          # Project documentation

🀝 Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you’d like to change.


πŸ“œ License

This project is open-source and available under the MIT License.


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

Made with ❀️ by:
Anup Kumar Jha
πŸ“§ aniljha1076@gmail.com
πŸ”— LinkedIn – anupjha26

πŸ“· Logo sourced from Wikimedia Commons

About

A responsive YouTube clone built with React, Vite, TypeScript, and Tailwind CSS, integrated with the YouTube Data API v3 for search, video playback, and channel browsing.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors