This project built with React + Redux + firebase.
Check out the deployed site
- Sign in / Sign Up ( Email or google authentication)
- Video
- Upload
- Watch
- Increase Views
- Like and dislike video
- Download
- Comment
- Subscribe to a channel
- View liked videos
- Trending
- Subscriptions
- History
- Channel
- Modify channel name and description
- Upload channel banner
- Upload channel avatar
- State Management - react-redux
- Routing - react-route-dom
- Styling - styled-components
- Database - firebase
- Video Player - react-player
- Network - axios
Create your firebase project. Get the project config, place it on src/firbase/config.js. Enable Sign-in method: Email and Google on project Authentication tag.
I am using cloudinary to store uploaded videos.
At the root of your project create an .env file with the following contents:
REACT_APP_CLOUDINARY_ENDPOINT=<YOUR_CLOUDINARY_UPLOAD_URL>
REACT_APP_FIREBASE_APIKEY=<YOUR_FIREBASE_API_KEY>
npm install
npm start
npm run build
This project is licensed under the MIT License