Features • Technologies • Api Docs • Frontend Note • Contribute
PlayTube is a scalable, feature-rich YouTube-style backend built using the MERN stack. It supports all major operations including video posting, liking, commenting, playlist management, community tweets, subscriptions, and more.
Authentication, file handling, and full API documentation via Swagger UI are included.
- Secure login and registration using JWT
- Password hashing with bcrypt
- Role-based access where applicable
- Video CRUD
- Like system for videos, comments, and tweets
- Commenting on videos and community tweets
- Tweet system (YouTube-like community posts)
- Channel & Playlist management
- Subscribe / Unsubscribe to channels
- File uploads using Multer
- Cloud storage with Cloudinary
- Optimized folder structure and clean code separation
- Fully documented using Swagger UI
- Node.js
- Express.js
- MongoDB with Mongoose
- JWT
- bcrypt
- Multer
- Cloudinary
- Swagger UI Express
- dotenv
- CORS
All API endpoints and their usage are documented in the separate api.md
file.
I have started working on a minimal frontend as well.
If you're interested in contributing to the frontend or improving UI/UX, feel free to open a PR!
You're welcome to contribute and enhance PlayTube!
- Fork the repo
- Create a branch:
git checkout -b feature/feature-name
- Make your changes and commit
- Open a pull request with a clear description and screenshots if applicable
Made with 💙 by Subrata Mondal