Skip to content

adityashriwas/YouTube_backend

Repository files navigation

🎥 YouTube + Twitter Backend

📌 Introduction

This project is a YouTube + Twitter inspired backend system that combines the core features of YouTube (video hosting, user subscriptions, comments, likes) with the micro-posting functionality of Twitter (tweets). It is a fully functional backend built using Node.js, Express.js, MongoDB, Mongoose, JWT, Bcrypt, and Cloudinary.


📖 Summary

This is a complete backend project with all standard practices such as JWT authentication, Bcrypt for password security, Access & Refresh Tokens for session management, and scalable MongoDB database models.

It provides features like:

  • User management with authentication
  • Video hosting and management
  • Tweet posting and management
  • Playlist management
  • Subscriptions, likes, comments, and replies
  • Channel dashboard with analytics

🔗 Important Links

Content Link
Data Models Click here

🚀 Features

👤 User Management

  • Registration, login, logout, password reset
  • Profile management (avatar, cover image, details)
  • Watch history tracking

📹 Video Management

  • Video upload and publishing
  • Video search, sorting, and pagination
  • Video editing and deletion
  • Visibility control (publish/unpublish)

🐦 Tweet Management

  • Create and publish tweets
  • View user tweets
  • Update and delete tweets

🔔 Subscription Management

  • Subscribe/unsubscribe to channels
  • View subscriber and subscribed channel lists

🎶 Playlist Management

  • Create, update, and delete playlists
  • Add/remove videos from playlists
  • View user playlists

👍 Like Management

  • Like/unlike videos, comments, and tweets
  • View liked videos

💬 Comment Management

  • Add, update, and delete comments on videos

📊 Dashboard

  • View channel statistics (views, subscribers, videos, likes)
  • Access uploaded videos

🩺 Health Check

  • Endpoint to verify backend status

🛠️ Technologies Used

  • Node.js
  • Express.js
  • MongoDB + Mongoose
  • JWT (Authentication)
  • Bcrypt (Password hashing)
  • Cloudinary (Media storage)

⚡ Installation & Setup

Clone the repository

git clone https://github.com/adityashriwas/YouTube_backend.git

Install dependencies

npm install

Start development server

npm run dev

Contributing

If you wish to contribute to this project, please feel free to contribute.

About

backend of youtube

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •