This is a Video Motion Backend
project that covers multiple functionalities
and also combines the tweet functionality from twitter into it. Find more about his project in the documentaion below.
Content | Link |
---|---|
API Documentation | click here |
Model | click here |
- Registration, Login, Logout, Change password
- Profile management (avatar, cover image, details)
- Watch history tracking
- Video upload and publishing
- Get all videos with pagination
- Increase view count
- Video details update (title, description, thumbnail)
- Visibility control (publish/unpublish)
- Add and remove video from history with position
- Delete video
- Tweet creation and publishing
- Viewing user tweets
- Updating and deleting tweets
- Subscribing to channels
- Viewing subscriber and subscribed channel lists
- Creating, updating, and deleting playlists
- Adding and removing videos from playlists
- Viewing user playlists
- Liking and unliking videos, comments, and tweets
- Like counts for tweet comment and videos
- Viewing liked videos
- Adding, updating, and deleting comments on videos
- Get comments from videoId
- Viewing channel statistics (views, subscribers, videos, likes)
- Accessing uploaded videos
- Endpoint to verify the backend's health
- Node.js
- Express.js
- MongoDB
- Cloudinary (must have an account)
-
Clone the repository:
git clone https://github.com/joshihemal/video-motion-backend.git
-
Install dependencies:
cd video-motion-backend npm install
-
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
-
Start the server:
npm run dev
If you wish to contribute to this project, please feel free to contribute.