This software was made using flutter. It is a mobile application which not only downloads media as either video or audio files from streaming sites such as YouTube and Vimeo, but also syncs YouTube playlists to your local device storage as either audio or video files.
The project was not brought to completion due to both a limitation in the integration of youtube-dl with Firebase functions, and the possible legal ramifications which an audio/video downloader software could incur on its creator.
All the front-end, user authentication, and connection to both the database and cloud functions are completely implemented, but the implementation of the cloud function which downloads media when given a link could not be completed due to a limitation in the integration of Firebase functions with youtube-dl.
The firebase function code was written in typescript, but is not functional due to the aforementioned limitation (a storage access limitation preventing the use of certain youtube-dl functionality on a firebase function).
User login through Firebase Authentication, and storing of user setting preferences with Cloud Firestore, and server functions with firebase functions
Playlist media are synced onto the user's local device, as video, audio, or both, in the location of their choosing. (media download is simulated as cloud function to download a link does not function)
|
Users can download individual media, or individual playlists, without having it constantly synced to their device. (media download is simulated as cloud function to download a link does not function.)
Users can choose to sync media as either audio files, video files, or both and can specify the desired locations for these syncs or one-time downloads.