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.
π Content | π Link |
---|---|
π΄ Live Link | click here |
π Model | click here |
- π Registration, login, logout, change password
- πΌοΈ Profile management (avatar, cover image, other details)
- π Watch history tracking and Clearing Watch History
- π Liked videos tracking
- β¬οΈ 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 creation and publishing
- ποΈ Viewing user tweets
- βοΈ Updating and deleting tweets
- β€οΈ Liking-disliking tweets
- β Subscribing to channels
- π₯ Viewing Channel subscribers
- π Viewing Subscribed channel lists
- β Creating, updating, and deleting playlists
- β Adding videos to playlists
- β Removing videos from playlists and undoing them
- π Viewing user playlists
- β€οΈ Liking and Un-liking videos, comments, and tweets
- ποΈβπ¨οΈ Viewing liked videos
- β Adding, updating, and deleting comments on videos
- π Viewing channel statistics (views, subscribers, videos, likes)
- ποΈ Accessing uploaded videos and controls
- π Viewing video statistics (PublishStatus, VideoName, DateUploaded, Views, TotalComments, LikeRatings)
- π οΈ Endpoint to verify the server's health
- βοΈ 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.
-
Clone the repository:
git clone https://github.com/ChandanPolai/UCHIHA-TUBE.git
-
Install dependencies For Backend:
cd -uchiha-backend npm install
-
Install dependencies For Frontend:
cd -uchiha-frontend npm install
-
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. -
Start the server:
npm run dev
For any questions or suggestions, please contact me on my socials.
Thanks to all my instructors.
This project is licensed under ChaiAurCode.