Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/chandanpolai/uchiha-backend

πŸš€uchiha-tube is a videosharing platrom like youtube..
https://github.com/chandanpolai/uchiha-backend

express mongodb mongoose nodejs

Last synced: about 9 hours ago
JSON representation

πŸš€uchiha-tube is a videosharing platrom like youtube..

Awesome Lists containing this project

README

        

# 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](https://uchiha-tube.vercel.app/) |
| πŸ“ˆ Model | [click here](https://app.eraser.io/workspace/cATefMPkrAdzR9c6teox?origin=share) |

## πŸš€ 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:**

```bash
git clone https://github.com/ChandanPolai/UCHIHA-TUBE.git
```

2. **Install dependencies For Backend:**

```bash
cd -uchiha-backend
npm install
```

2. **Install dependencies For Frontend:**

```bash
cd -uchiha-frontend
npm install
```

3. **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.

4. **Start the server:**

```bash
npm run dev
```

## πŸ“ž Contact

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

- [LinkedIn](https://www.linkedin.com/in/chandan-polai-835063270/)

## πŸ™ Acknowledgments

Thanks to all my instructors.

## πŸ“ License

This project is licensed under [ChaiAurCode](https://www.youtube.com/@chaiaurcode).