A video library web application built using MERN stack.
Clone this repository. You will need node and npm installed globally on your machine.
Installation:
npm installTo Start Server
npm startVisit app on your browser at:
localhost:3000
- UI Library: React JS
- CSS library: Krypton UI
- Routing: react router v6
API source code can be found here
- User Sign Up
- User Login
- Persist logged-in state with localStorage
- Create new playlist
- Update playlist
- Add/remove videos to/from playlist
- Delete playlist
- Default user playlists: liked, watch later
- User, Playlists: React reducer + context
- Search bar
- Filter videos by genre, year of release, country, language, etc.
- Persist filter in URL to create shareable links
- Sort by IMDB rating, year of release, name
- Like and Save video buttons
- 404 page for Not Found error handling
/- home/watch- videos listing/watch/:videoId- watch video/login- login/signup- register
Follwing routes require user authentication:
/playlists- user playlists/playlists/:playlistId- user playlist
- Icons: Font Awesome
- Logo: Noun Project
- Video source: YouTube