Skip to content

Latest commit

 

History

History
104 lines (66 loc) · 2.4 KB

Readme.md

File metadata and controls

104 lines (66 loc) · 2.4 KB

YouTube Backend

Introduction

This is a YOUTUBE backend project that covers allmost the functionalities of youtube and also combines the tweet functionality from twitter into it. Find more about his project in the documentaion below.

Important links

Content Link
API Documentation click here
Model 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:

  • Tweet creation and publishing
  • Viewing user tweets
  • Updating and deleting tweets

Subscription Management:

  • Subscribing to channels
  • Viewing subscriber and subscribed channel lists

Playlist Management:

  • Creating, updating, and deleting playlists
  • Adding and removing videos from playlists
  • Viewing user playlists

Like Management:

  • Liking and unliking videos, comments, and tweets
  • Viewing liked videos

Comment Management:

  • Adding, updating, and deleting comments on videos

Dashboard:

  • Viewing channel statistics (views, subscribers, videos, likes)
  • Accessing uploaded videos

Health Check:

  • Endpoint to verify the backend's health

Technologies Used

  • Node.js
  • Express.js
  • MongoDB
  • Cloudinary (must have an account)

Installation and Setup

  1. Clone the repository:

    git clone https://github.com/SubhamKumar101201/backend-youtube-clone.git
  2. Install dependencies:

    cd backend-youtube-clone
    npm install
  3. Set up environment variables: Create a .env in root of project and fill in the required values in the .env file using .env.sample file

  4. Start the server:

    npm run start

Contributing

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

License

This project is licensed under ChaiAurCode.

changes