{"id":28861177,"url":"https://github.com/princeraj620/youtube-clone","last_synced_at":"2026-04-07T21:32:14.344Z","repository":{"id":299517575,"uuid":"1003286761","full_name":"princeraj620/Youtube-Clone","owner":"princeraj620","description":"   A modern, full-featured YouTube clone built with Flask, MongoDB. Features: video upload, comments, likes, user authentication, responsive design. Tech: Python, Flask, MongoDB, Bootstrap, JavaScript.","archived":false,"fork":false,"pushed_at":"2025-06-16T23:51:39.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-17T00:28:12.423Z","etag":null,"topics":["authentication","bootstrap","comments","css3","drag-drop","flask","html5","javascript","mongodb","python","real-time","responsive-design","social-media","subscriptions","video-sharing","web-development","youtube-clone-app"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/princeraj620.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-16T23:19:15.000Z","updated_at":"2025-06-17T00:06:47.000Z","dependencies_parsed_at":"2025-06-17T00:39:46.610Z","dependency_job_id":null,"html_url":"https://github.com/princeraj620/Youtube-Clone","commit_stats":null,"previous_names":["princeraj620/youtube-clone"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/princeraj620/Youtube-Clone","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/princeraj620%2FYoutube-Clone","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/princeraj620%2FYoutube-Clone/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/princeraj620%2FYoutube-Clone/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/princeraj620%2FYoutube-Clone/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/princeraj620","download_url":"https://codeload.github.com/princeraj620/Youtube-Clone/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/princeraj620%2FYoutube-Clone/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260884626,"owners_count":23076888,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["authentication","bootstrap","comments","css3","drag-drop","flask","html5","javascript","mongodb","python","real-time","responsive-design","social-media","subscriptions","video-sharing","web-development","youtube-clone-app"],"created_at":"2025-06-20T05:05:19.318Z","updated_at":"2026-04-07T21:32:14.333Z","avatar_url":"https://github.com/princeraj620.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c\u003c\u003c\u003c\u003c\u003c\u003c HEAD\n# GrievanceGuardian\n\n**AI-Powered Citizen Grievance Redressal \u0026 Tracking System**\n\nGrievanceGuardian is a full-stack web platform that empowers citizens to submit complaints, track their progress in real time, and ensures government departments handle them efficiently, transparently, and on time. The system uses AI for smart categorization, priority scoring, and automatic routing, and leverages blockchain-inspired transparency for immutable records and audit trails.\n\n## Features\n- **User Registration \u0026 Login:** Citizens, officials, and admins\n- **AI Complaint Analyzer:** NLP-based categorization, priority scoring, and department routing\n- **Blockchain Transparency:** Immutable complaint records, smart contract logic for escalations\n- **Real-Time Tracking:** Live status updates, notifications, and feedback system\n- **Official Dashboard:** Department-wise complaint management and analytics\n- **Token Rewards:** Earn tokens for feedback and engagement\n- **Analytics:** Visualize complaint trends and department performance\n- **Multi-language Ready:** Easily extendable for 22+ Indian languages\n\n## Tech Stack\n- **Frontend:** Jinja2 (Bootstrap 5, FontAwesome)\n- **Backend:** Flask, Python, Flask-Login\n- **Database:** MongoDB (Atlas or local)\n- **AI/ML:** NLTK, TextBlob (NLP)\n- **Blockchain:** Simulated with hashes and smart contract logic\n- **Deployment:** Docker-ready, cloud deployable\n\n## Setup Instructions\n1. **Clone the repository:**\n   ```bash\n   git clone \u003crepo-url\u003e\n   cd \u003cproject-directory\u003e\n   ```\n2. **Install dependencies:**\n   ```bash\n   pip install -r requirements.txt\n   ```\n3. **Set up MongoDB:**\n   - Use MongoDB Atlas or run a local MongoDB instance\n   - Update the MongoDB URI in `app.py` if needed\n4. **Run the app:**\n   ```bash\n   python app.py\n   ```\n5. **Access the app:**\n   - Open [http://localhost:5000](http://localhost:5000) in your browser\n\n## Demo Accounts\n- **Citizen:** `citizen1` / `password123`\n- **Official:** `official1` / `password123`\n- **Admin:** `admin` / `admin123`\n\n## Project Structure\n- `app.py` - Main Flask backend\n- `templates/` - Jinja2 HTML templates\n- `static/` - CSS, JS, images\n- `uploads/` - File uploads\n- `requirements.txt` - Python dependencies\n\n## Contributing\nPull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.\n\n## License\nMIT\n=======\n# YouTube Clone - Real-Time Video Sharing Platform\n\n\u003e **🔍 SEO Keywords**: YouTube Clone, Flask Video Sharing, MongoDB Video Platform, Python Web App, Video Upload System, Social Media Clone\n\nA modern, full-featured YouTube clone built with Flask, MongoDB, and modern web technologies. This application provides a complete video sharing platform with user authentication, video upload, streaming, comments, likes, and more.\n\n## 🌟 **Why This YouTube Clone?**\n\n- **Complete Feature Set**: User authentication, video upload, comments, likes, subscriptions\n- **Modern Tech Stack**: Flask, MongoDB, Bootstrap 5, JavaScript ES6+\n- **Responsive Design**: Works perfectly on desktop, tablet, and mobile\n- **Production Ready**: Includes security features, error handling, and optimization\n- **Easy Setup**: One-click installation and demo data included\n\n## 🚀 Quick Start - One Click Setup!\n\n### Option 1: Windows Users (Easiest!)\n1. **Double-click** `start.bat` file\n2. Wait for automatic setup to complete\n3. Open your browser to `http://localhost:5000`\n4. **That's it!** 🎉\n\n### Option 2: All Platforms\n1. **Run** `python start.py`\n2. Wait for automatic setup to complete\n3. Open your browser to `http://localhost:5000`\n4. **That's it!** 🎉\n\n### Option 3: Manual Setup\n```bash\npython -m venv venv\nvenv\\Scripts\\activate  # Windows\nsource venv/bin/activate  # macOS/Linux\npip install -r requirements.txt\npython app.py\n```\n\n## 🎯 Demo Access\n\nOnce the application is running:\nLive access - https://6a6e5bee-6df6-497c-96f4-acca8cea596e-00-zfrsh8m8eegx.sisko.replit.dev/\n- **Main Site**: http://localhost:5000\n- **Quick Demo Login**: http://localhost:5000/demo-login\n- **Demo Credentials**: \n  - Username: `demo_user1`\n  - Password: `password123`\n\n## 🚀 Features\n\n### Core Features\n- **User Authentication**: Secure registration and login system with bcrypt password hashing\n- **Video Upload**: Drag-and-drop video upload with automatic thumbnail generation\n- **Video Streaming**: HTML5 video player with support for multiple formats\n- **Comments System**: Real-time commenting on videos\n- **Like/Dislike System**: Interactive like and dislike functionality\n- **User Channels**: Personal channel pages with subscriber system\n- **Search Functionality**: Full-text search across video titles and descriptions\n- **Trending Videos**: Algorithm-based trending video recommendations\n\n### Modern UI/UX\n- **Responsive Design**: Mobile-first responsive layout\n- **Modern Interface**: Clean, YouTube-inspired design with smooth animations\n- **Video Grid Layout**: Pinterest-style video grid with hover effects\n- **Real-time Interactions**: AJAX-powered like/dislike and subscribe buttons\n- **Loading States**: Smooth loading animations and feedback\n\n### Technical Features\n- **MongoDB Integration**: Scalable NoSQL database for video and user data\n- **File Management**: Secure file upload with size and type validation\n- **Thumbnail Generation**: Automatic video thumbnail creation\n- **Session Management**: Flask-Login for secure user sessions\n- **Error Handling**: Comprehensive error handling and user feedback\n- **Sample Data**: Pre-loaded demo content for immediate testing\n\n## 🛠️ Technology Stack\n\n### Backend\n- **Flask 3.0.0**: Python web framework\n- **MongoDB**: NoSQL database with PyMongo\n- **Flask-Login**: User session management\n- **bcrypt**: Password hashing\n- **MoviePy**: Video processing and thumbnail generation\n- **Pillow**: Image processing\n- **OpenCV**: Video frame extraction\n\n### Frontend\n- **Bootstrap 5**: CSS framework for responsive design\n- **Font Awesome**: Icon library\n- **JavaScript (ES6+)**: Modern JavaScript for interactivity\n- **CSS3**: Custom styling with CSS Grid and Flexbox\n\n### Development Tools\n- **Python 3.8+**: Programming language\n- **pip**: Package management\n- **Git**: Version control\n\n## 📋 Prerequisites\n\nBefore running this application, make sure you have:\n\n- Python 3.8 or higher\n- MongoDB database (local or cloud)\n- FFmpeg (for video processing)\n- Modern web browser\n\n## 🚀 Installation \u0026 Setup\n\n### Automatic Setup (Recommended)\nThe application includes automatic setup scripts that handle everything:\n\n1. **Windows**: Double-click `start.bat`\n2. **All Platforms**: Run `python start.py`\n\nThese scripts will:\n- ✅ Check Python installation\n- ✅ Create virtual environment\n- ✅ Install all dependencies\n- ✅ Create necessary directories\n- ✅ Start the application\n- ✅ Load sample data\n\n### Manual Setup\nIf you prefer manual setup:\n\n#### 1. Clone the Repository\n```bash\ngit clone \u003crepository-url\u003e\ncd Real-Time-Fire-Detection-Flask-App\n```\n\n#### 2. Create Virtual Environment\n```bash\npython -m venv venv\n\n# On Windows\nvenv\\Scripts\\activate\n\n# On macOS/Linux\nsource venv/bin/activate\n```\n\n#### 3. Install Dependencies\n```bash\npip install -r requirements.txt\n```\n\n#### 4. MongoDB Setup\n1. Create a MongoDB database (local or cloud)\n2. Update the MongoDB connection string in `app.py`:\n```python\nclient = MongoClient(\"your-mongodb-connection-string\")\ndb = client[\"youtube_clone\"]\n```\n\n#### 5. Environment Configuration\nCreate a `.env` file in the root directory:\n```env\nFLASK_SECRET_KEY=your-secret-key-here\nMONGODB_URI=your-mongodb-connection-string\n```\n\n#### 6. Create Upload Directories\nThe application will automatically create the required directories:\n- `uploads/videos/` - For video files\n- `uploads/thumbnails/` - For video thumbnails\n\n#### 7. Run the Application\n```bash\npython app.py\n```\n\nThe application will be available at `http://localhost:5000`\n\n## 📁 Project Structure\n\n```\nReal-Time-Fire-Detection-Flask-App/\n├── app.py                 # Main Flask application\n├── start.py              # Python startup script\n├── start.bat             # Windows startup script\n├── requirements.txt       # Python dependencies\n├── README.md             # Project documentation\n├── uploads/              # Upload directories\n│   ├── videos/          # Video files\n│   └── thumbnails/      # Video thumbnails\n├── static/              # Static assets\n│   ├── img/            # Images\n│   ├── css/            # Stylesheets\n│   └── js/             # JavaScript files\n└── templates/           # HTML templates\n    ├── base.html       # Base template\n    ├── index.html      # Home page\n    ├── login.html      # Login page\n    ├── register.html   # Registration page\n    ├── upload.html     # Video upload page\n    ├── video.html      # Video watch page\n    ├── channel.html    # User channel page\n    ├── search.html     # Search results page\n    └── trending.html   # Trending videos page\n```\n\n## 🎯 Key Features Explained\n\n### User Authentication\n- Secure registration with email validation\n- Password hashing using bcrypt\n- Session management with Flask-Login\n- Protected routes for authenticated users\n- **Demo login available for instant testing**\n\n### Video Upload System\n- Drag-and-drop file upload interface\n- File type validation (MP4, AVI, MOV, MKV, WEBM)\n- File size limits (500MB max)\n- Automatic thumbnail generation from video frames\n- Progress indicators and error handling\n\n### Video Player\n- HTML5 video player with custom controls\n- Responsive design for all screen sizes\n- Video quality selection (if available)\n- Playback statistics tracking\n\n### Social Features\n- **Comments**: Real-time commenting system\n- **Likes/Dislikes**: Interactive rating system\n- **Subscriptions**: Channel subscription functionality\n- **User Profiles**: Personal channel pages\n\n### Search \u0026 Discovery\n- Full-text search across video content\n- Search result highlighting\n- Trending video algorithm\n- Related video recommendations\n\n### Sample Data\n- **Pre-loaded demo content**: 6 sample videos with realistic data\n- **Demo users**: 3 sample accounts for testing\n- **Sample comments**: Pre-existing comments on videos\n- **View statistics**: Realistic view counts and engagement\n\n## 🔧 Configuration\n\n### Database Collections\nThe application uses the following MongoDB collections:\n- `users` - User accounts and profiles\n- `videos` - Video metadata and information\n- `comments` - Video comments\n- `likes` - User likes and dislikes\n- `views` - Video view tracking\n\n### File Upload Settings\n- Maximum file size: 500MB\n- Supported formats: MP4, AVI, MOV, MKV, WEBM\n- Thumbnail generation: Automatic from video frames\n- Storage: Local file system (can be extended to cloud storage)\n\n## 🚀 Deployment\n\n### Local Development\n```bash\npython app.py\n```\n\n### Production Deployment\nFor production deployment, consider:\n\n1. **Web Server**: Use Gunicorn or uWSGI\n```bash\npip install gunicorn\ngunicorn -w 4 -b 0.0.0.0:5000 app:app\n```\n\n2. **Reverse Proxy**: Nginx for static file serving\n3. **Cloud Storage**: AWS S3 or similar for video files\n4. **CDN**: Content delivery network for global access\n5. **SSL**: HTTPS certificate for security\n\n### Environment Variables\n```env\nFLASK_ENV=production\nFLASK_SECRET_KEY=your-production-secret-key\nMONGODB_URI=your-production-mongodb-uri\n```\n\n## 🔒 Security Features\n\n- Password hashing with bcrypt\n- CSRF protection\n- File upload validation\n- SQL injection prevention (MongoDB)\n- XSS protection\n- Secure session management\n\n## 📊 Performance Optimization\n\n- Video thumbnail caching\n- Database indexing for search\n- Static file compression\n- Lazy loading for video grids\n- CDN integration ready\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests if applicable\n5. Submit a pull request\n\n## 📝 License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\n## 🆘 Support\n\nIf you encounter any issues:\n\n1. **Check the console** for error messages\n2. **Verify MongoDB connection** is working\n3. **Ensure all dependencies** are installed\n4. **Check file permissions** for upload directories\n5. **Try the demo login** at `/demo-login` to test functionality\n\n## 🎉 What You Get Immediately\n\nWhen you start the application, you'll have:\n\n- ✅ **6 Sample Videos** ready to watch\n- ✅ **3 Demo Users** to test with\n- ✅ **Sample Comments** on videos\n- ✅ **Realistic View Counts** and engagement metrics\n- ✅ **Full Functionality** - upload, comment, like, subscribe\n- ✅ **Responsive Design** that works on all devices\n- ✅ **Modern UI** with smooth animations\n\n## 🎯 Future Enhancements\n\n- **Real-time Notifications**: WebSocket integration\n- **Video Categories**: Content categorization\n- **Advanced Search**: Filters and sorting options\n- **Video Playlists**: User-created playlists\n- **Live Streaming**: Real-time video streaming\n- **Mobile App**: React Native or Flutter app\n- **Analytics Dashboard**: Video performance metrics\n- **Monetization**: Ad integration and premium features\n\n## 🔍 **Related Projects \u0026 Alternatives**\n\nLooking for other video sharing platforms or social media clones?\n- **Instagram Clone**: Photo sharing platform\n- **Twitter Clone**: Microblogging platform  \n- **Facebook Clone**: Social networking platform\n- **TikTok Clone**: Short video platform\n- **Netflix Clone**: Video streaming platform\n\n## 📈 **Popularity \u0026 Usage**\n\nThis YouTube clone has been used by:\n- **Students** learning web development\n- **Developers** building portfolio projects\n- **Startups** creating video platforms\n- **Companies** testing video features\n\n---\n\n**🎉 Ready to use! Just run `start.bat` (Windows) or `python start.py` (All platforms) and enjoy your YouTube clone!**\n\n**⭐ Star this repository if you found it helpful!**\n\u003e\u003e\u003e\u003e\u003e\u003e\u003e 69fd3cb497a186fc35fbc747bec116d14231234b\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprinceraj620%2Fyoutube-clone","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprinceraj620%2Fyoutube-clone","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprinceraj620%2Fyoutube-clone/lists"}