ViewTube is a YouTube playlist application to manage and watch playlists on YouTube. The main purpose of this application is to manage watched videos (partial or full) whether it is a sequential playlist or non-sequential. Having the playlists you are watching currently from YouTube in one place can be helpful and easier to keep up with.
- Add any YouTube playlist
- Partially watch videos to resume later
- Sort playlists alphabetically by channel or playlist name
- Mark playlist as a sequential or non-sequential playlist
- Change behavior of all playlist types individually
- Backup playlist data and settings (from file)
- Restore playlist data and settings (from file)
Support for Windows, Mac OS, Linux. Currently a binary file is not made. To run the program follow the following:
yarn install
yarn run electron:serve
yarn run ng:serve
- Development mode IPC communication
- Production mode index.html loading
- Read existing tokens from file
- Refresh the token if it has expired
- Production mode scripts for mac, windows, linux
- Create icon for release
- Get account name for top left box
- pass on OAuth2 Client to FE, and use as-is
- Search for playlists
- Save files to 'Documents/viewtube'
- Decode ID JTW token to get name and email
- Add logout option
- Load playlist videos for "resume" on homepage (if not loaded)
- Get account playlists
- Store playlist in JSON form in neDB
- Store watched videos in NEDB (playlistId, videoId, watchedPercentage)
- Display watched percentages on the UI (playlist-view)
- Sequential Playlists - load next video automatically
- Handle the following:
- Mark videos watched with for ones before
- Mark videos next as unwatched
- Load next video at stopped time when Resumed
- Load next page if next video is not available
- Random Playlists - - [x] Handle loading from current page - [x] After exhaustion, load from next page [x] Playlist summary next to resume
- Add settings page - [ ] Default playlist type (sequential or random) - [ ] Export data to file - [ ] Import data from file - [ ] Mark videos watched after x percentage - [ ] Default playlist type (random, sequential) - [ ] auto-play videos
- Cache youtube calls
- Google Drive backup integration
- Switch to Yarn
- Switch to React.js