Skip to content

This project serves as the backend for a video uploading and viewing platform.

Notifications You must be signed in to change notification settings

IronJosh786/Backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Video Platform Backend

This project serves as the backend for a video uploading and viewing platform. The backend includes controllers for handling user-related functionalities, video management, likes, comments, tweets, subscriptions, dashboards, and playlists.

Table of Contents

Features

  • User authentication and management

  • Video upload and viewing

  • Likes and comments on videos

  • Tweets related to video content

  • User subscriptions and dashboards

  • Playlist creation and management

Getting Started

Prerequisites

Before setting up the project, ensure you have the following installed:

  • Node.js

  • npm (Node Package Manager)

Installation

  1. Clone the repository:

    git clone https://github.com/ironjosh786/backend.git
    
  2. Change to the project directory

    cd backend
    
  3. Create a .env file in the root directory and configure the following environment variables:

    PORT,
    CORS_ORIGIN,
    MONGODB_URI,
    ACCESS_TOKEN_SECRET,
    ACCESS_TOKEN_EXPIRY,
    REFRESH_TOKEN_SECRET,
    REFRESH_TOKEN_EXPIRY,
    CLOUDINARY_CLOUD_NAME,
    CLOUDINARY_API_KEY,
    CLOUDINARY_API_SECRET
    
  4. Install the dependencies

    npm install
    
  5. Start the development server

    npm start

Models

  1. Users
  • User model for authentication and profile management.
  1. Videos
  • Model to store information about uploaded videos.
  1. Likes
  • Model for tracking likes on videos.
  1. Comments
  • Model to store comments on videos.
  1. Tweets
  • Model for tweets related to video content.
  1. Subscriptions
  • Model to manage user subscriptions to channels.
  1. Dashboards
  • Model for user dashboards, aggregating content from subscribed channels.
  1. Playlists
  • Model for creating and managing user playlists.

License

This project is licensed under ChaiAurCode

Releases

No releases published

Packages

No packages published