## 🎥 BuzzTube
BuzzTube is a full-featured video-sharing platform that allows users to upload, watch, and interact with videos & shorts, create their own channels, and manage content through a powerful BuzzTube Studio interface enabling them to view video's analytics as well.
🔗 Live Demo: [https://buzztube-production.up.railway.app]
- 🔐 Google OAuth Authentication (Secure sign-in)
- 📺 Watch videos & shorts with smooth streaming
- 📤 Upload videos & shorts with titles, thumbnails, and descriptions
- 📁 Channel system – create and manage your own channel
- 💬 Comment system – leave comments on videos & shorts
- 🔔 Subscribe/Unsubscribe from channels
- 📊 BuzzTube Studio – manage your videos, channel stats, and subscribers
- 🌄 Upload Thumbnails - add thumbnails on videos
| Frontend | Backend | Storage & Tools |
|---|---|---|
| EJS | Node.js | 🖼️ ImageKit (thumbnails) |
| HTML/CSS | Express.js | 📹 Bunny Stream (video hosting & streaming) |
| MongoDB | 🔐 Google OAuth2 |
Follow the steps below to set up and run BuzzTube locally.
First, clone the repository to your local machine:
git clone https://github.com/your-username/buzztube.git
cd buzztubeSecond, Install Dependencies:
npm iThird, Create a .env file:
touch .envNow, use the format in example.env file, and put your credentials in the .env file.
Four, start the server:
npm startFive, Visit http://localhost:3000 in your browser to access the app.







