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 + twitter like application

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •