Overview
One tool for three jobs: fetch a video, fetch a whole playlist, or just read the metadata and download nothing. Public, and written early.
Complexities tackled
Playlists are not loops over videos. A playlist has entries that are private, removed or region blocked, and treating them as a simple iteration means one bad entry ends the run. Each item has to fail on its own without taking the rest with it.
Separating inspection from download. Being able to ask what is in a playlist without pulling any of it turned out to be the feature used most, which is a reminder that the cheap read-only path is often the valuable one.
Stack
Python, with ffmpeg for the stream handling.
Working on something similar?
Tell me what you are building and what is in the way. I will tell you honestly whether I am the right person for it.