Skip to content

bhargavbhatiya/Online_video_streaming_portal

Repository files navigation


Plax-tech

Video Streaming Portal


View Demo · Report Bug · Request Feature

Table of Contents

  1. About The Project
  2. Getting Started
  3. Some Glimps of Our Site
  4. Contributing
  5. Contact
  6. References
## About The Project

Homepage

V-Streams: V-Streams is a Online Video Streaming Portal which allows users to stream, like videos, comment, share, add new video, And get recommendation. It offers a wide variety of user-generated and corporate media videos. Available content includes TV show clips, movies, movie trailers.

The program is a new self-contained product. It has come about due to the demand for such a product being identified in Activities like Drama, Action, Horror, Comedy, Adventures, Romance, and many more. From these activities, we saw that the main activity people used video for was the watch content found online. These people would regularly spend periods of time searching websites to try and find the videos they wanted to watch, either somewhere to stream the video from or the files.

There are 2 system users :

  • Admin Users : The system admin who owns the system and manages the over-all site and take care of the content posted on the site. The admin is able to upload, delete and manage videos. Also admin can remove users, can make user to admin, can remove unwanted comment of any users.
  • Normal users : The system is open to the Internet! Any user can visit the site, and can stream videos.

The system primely provides the following features :

  • Aesthetic & Attractive UI (with animations)
  • Authentication (Email + Google)
  • Stream videos
  • upload videos
  • Process videos (for Adaptive Bitrate Streaming)
  • Recommend related movies
  • Search Movies
  • Like, Comment & Share
  • Manage History, Liked list, watch later list

Built With

The project is tech-rich made with multiple frameworks and libraries. The tech stack employeed for the developement is as listed below :

Tech. Description
Reactjs for building user interfaces based on UI components
Nodejs To create APIs & to provide a medium to connect React with DB
Express NodeJS framework that can help you in creating server-side web applications faster and smarter
Mongo To store data of Users and Movie details
Cloudinary To store user's Avatar
GCP Google Authentication & varification e-mails
AWS To upload movie videos and processing videos for streaming in different qualities(Adaptive Bitrate Streaming)
Azure Portal for deployment of recommendation API and V-Streams MERN App
Google Colab used for making python based Machine Learning model to recommend related movies
Flask used for developing web applications using python ML model for movie recommend System

Getting Started

Follow the steps given below to set up the project locally! The site is built with Node-Express-Mongo backend and React frontend.

Prerequisites

You must have following installed in the system.

  • npm

    npm install npm@latest -g

Installation

Clone the following repository :

git clone https://github.com/bhargavbhatiya/Online_video_streaming_portal.git

Change the current directory to Plax-tech

 cd Online_video_streaming_portal
A. Setting up Node-Express-Mongo Backend.

In order run the backend, you should have :

  • Google Cloud Platform Billing account and GCP Storage Bucket.
  • MongoDB Atlas Cluster.
  1. Update .env file value as per given .env_sample file.
  2. Run the following command to install the node modules in your local system:
    npm install
B. Setting up ReactJs
  1. Go to the directory :
    cd client
  2. Run the following command to install the node modules in your local system:
    npm install
C. Run the project
  1. Go to the root directory :
    cd ../
  2. Run the following commands to run front-end & Back-end server.
    npm run dev

There we go! Our Streaming app is running.

Some Glimps of Our Site

Normal User

Register & Login (Including verify email & forget password):

Light Dark

HomePage:

Streaming video:

Recommendation Movie:

Manage Profile & All Lists:

Search Movie:

Admin User

Add Movie Video:

Add Movie Details:

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Contact

Bhargav Bhatiya - @bhargavbhatiya - [email protected]

Kaushal Bhalaiya - @kaushal612 - [email protected]

Project Link: https://github.com/bhargavbhatiya/Online_video_streaming_portal.git

Live Project Link: https://v-streams.azurewebsites.net/

References

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published