A robust, enterprise-grade REST API backend built to mimic production systems like YouTube. This platform manages video uploads, user authentication, secure data relations, channel subscriptions, tweets, likes, playlists, and analytics.
- Secure Authentication: Secure user signup, login, and logout tracking with Access and Refresh Tokens stored securely in HTTP-Only cookies.
- Media Handling Engine: Scalable asset uploads (avatars, cover images, video files, thumbnails) handled via
Multermiddleware and processed instantly throughCloudinarycloud storage. - Advanced Database Aggregation: Clean application layer pipelines utilizing MongoDB/Mongoose aggregation frameworks for custom subscriber metrics, channel dashboards, and watch histories.
- Comprehensive Platform Features: Full implementations for Video controls (publish/hide, view counts), Channel Subscriptions, Playlists, Comments, Post Likes, and Tweeting.
The project follows a scalable, production-grade Model-View-Controller (MVC) separation of concerns layer:
src/
├── app.js # Express app initialization & globally used middlewares
├── index.js # Production server entry point & DB configuration injection
├── constants.js # Immutable system-wide variables (e.g., DB Name)
├── db/ # Mongoose connection handling configurations
├── controllers/ # Request processing orchestrators (Core business logic)
├── models/ # Robust MongoDB structural schemas & data validation
├── routes/ # Clean REST endpoint route maps mapping to controllers
├── middlewares/ # Session validation & temporary file interceptors
└── utils/ # Standardized ApiError templates, Responses, & Cloudinary handlers