1.0.3 • Public • Published


Archives and saves youtube videos from different sources while keeping track of previously downloaded videos.
NOTE: You now need your own API KEY, either supplied through the command line or through key.txt Disclaimer: I am not responsible for the misuse of this tool and/or blatant disregard of relevant copyright law and terms and conditions. Please ensure that you are within your rights and obligations whenever forming mirrors or copies of content on youtube.

What it Does

youtube-archive serves as a nodejs command-line utility that surrounds the youtube-dl python script with a group of useful helper functions, such as multi-directory search and multiple simultaneous downloads. In effect, it helps to "archive" youtube more effectively than youtube-dl does on its own.

Whereas youtube-dl only ever refuses to download a file on the grounds of a name collision, youtube-archive can read multiple directories of already sorted information to be sure that you are not downloading a copy of a file you already have on your system. Furthermore, it stores downloaded files in "dictionaries" (a term used lossely and independently of convention), meaning if you download a file using youtube-archive and later rename it and move it, you can be sure that you won't download it again even if you don't remember the exact dictionary you put it in.

Furthermore, youtube-dl only checks for a name collision after spending a few seconds or more on downloading necessary information, which means that checking for collisions also takes an absurd amount of time for longer playlists.

This is especially useful for keeping complete copies of entire youtube channels or playlists as they change.

How to Use

Note: Requires youtube-dl to be in your path. youtube-archive has no other dependencies and only uses utilities that are in the core NodeJS library. Run youtube-archive with -h to see usage instructions.

Package Sidebar


npm i youtube-archive

Weekly Downloads






Last publish


  • dylanthinnes