A full-featured backend for video streaming application that allows users to upload, and interact with videos in real-time.
- User Authentication: Secure sign-up, login, and logout functionality.
- Video Upload: Upload video content to the platform.
- Commenting System: Engage with videos by adding comments.
-
Backend:
- Node.js - Server-side runtime.
- Express.js - Web framework.
- Multer - File upload middleware.
-
Cloud Storage:
- Cloudinary - Image and video transformation.
-
Authentication:
- JWT - Secure JSON Web Token-based authentication.
-
Database:
-
Clone the repository:
git clone https://github.com/Praanshu98/video_streaming_app.git cd video_streaming_app
-
Install dependencies:
For the backend:
npm install
-
Set up environment variables:
Create a
.env
file in thevideo_streaming_app
directory and add the following:PORT=8000 MONGODB_USERNAME=<your_mongodb_username> MONGODB_PASSWORD=<your_mongodb_password> CORS_ORIGIN=* ACCESS_TOKEN_SECRET=<your_access_token_secret> ACCESS_TOKEN_EXPIRY=<your_access_token_expiry> REFRESH_TOKEN_SECRET=<your_refresh_token_secret> REFRESH_TOKEN_EXPIRY=<your_refresh_token_expiry> CLOUDINARY_CLOUD_NAME=<your_cloudinary_cloud_name> CLOUDINARY_API_KEY=<your_cloudinary_api_key> CLOUDINARY_API_SECRET=<your_cloudinary_api_secret>
-
Start the development server:
Backend (Express API):
npm run dev
- Sign up or log in to the application.
- Upload a video file.
- Add comments to interact with the video content.
- Enjoy real-time updates and interactions!
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch:
git checkout -b feature-branch-name
. - Make your changes.
- Commit your changes:
git commit -m 'Add some feature'
. - Push to the branch:
git push origin feature-branch-name
. - Open a pull request.
This project is licensed under the MIT License - see the LICENSE file for details.