/UCHIHA-TUBE

πŸš€Uchiha Tube is a videosharing platfrom like youtube 😊

Primary LanguageJavaScript

Uchiha-Tube πŸŽ₯🐦 (YouTube + Twitter)

Overview

Uchiha-Tube (YOUTUBE + TWITTER) is an innovative project combining the functionality of a video hosting platform like YouTube with micro-blogging features similar to Twitter. Built on a robust tech stack including Node.js, Express.js, React.js, and MongoDB, this platform offers a seamless user experience with modern features.

🌐 Important Links

πŸ“„ Content πŸ”— Link
πŸ”΄ Live Link click here
πŸ“ˆ Model click here

πŸš€ Features

πŸ‘€ User Management:

  • πŸ” Registration, login, logout, change password
  • πŸ–ΌοΈ Profile management (avatar, cover image, other details)
  • πŸ•’ Watch history tracking and Clearing Watch History
  • πŸ‘ Liked videos tracking

πŸ“Ή Video Management:

  • ⬆️ Video upload
  • ❌ Canceling Video upload with all resources cleaned up on backend
  • 🎞️ View all videos in various resolutions, including 720p, according to your preference.
  • πŸ‘οΈβ€πŸ—¨οΈ Visibility control (publish/un-publish)
  • ✏️ Video editing and deletion
  • πŸ” Video Search and pagination

πŸ“ Tweet Management:

  • 🐦 Tweet creation and publishing
  • πŸ‘οΈ Viewing user tweets
  • ✏️ Updating and deleting tweets
  • ❀️ Liking-disliking tweets

πŸ”” Subscription Management:

  • βž• Subscribing to channels
  • πŸ‘₯ Viewing Channel subscribers
  • πŸ“œ Viewing Subscribed channel lists

🎡 Playlist Management:

  • βž• Creating, updating, and deleting playlists
  • βž• Adding videos to playlists
  • βž– Removing videos from playlists and undoing them
  • πŸ“œ Viewing user playlists

πŸ‘ Like Management:

  • ❀️ Liking and Un-liking 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 and controls
  • πŸ“Š Viewing video statistics (PublishStatus, VideoName, DateUploaded, Views, TotalComments, LikeRatings)

βœ… Health Check:

  • πŸ› οΈ Endpoint to verify the server's health

πŸ› οΈ Technologies

  • βš™οΈ Node.js: The runtime environment for executing JavaScript code server-side.
  • 🌐 Express.js: A web application framework for Node.js.
  • πŸ—„οΈ MongoDB: A NoSQL database used for storing application data.
  • πŸ”— Mongoose: An Object Data Modeling (ODM) library for MongoDB and Node.js.
  • πŸ”’ JWT: JSON Web Tokens for securely transmitting information between parties as a JSON object.

πŸ“¦ Installation and Setup

  1. Clone the repository:

    git clone https://github.com/ChandanPolai/UCHIHA-TUBE.git
  2. Install dependencies For Backend:

    cd -uchiha-backend
    npm install
  3. Install dependencies For Frontend:

    cd -uchiha-frontend
    npm install
  4. Set up environment variables: Create a .env file in the root of the project and fill in the required values using the .env.sample file.

  5. Start the server:

    npm run dev

πŸ“ž Contact

For any questions or suggestions, please contact me on my socials.

πŸ™ Acknowledgments

Thanks to all my instructors.

πŸ“ License

This project is licensed under ChaiAurCode.