mediadl-cli
v0.1.6
Published
download any video from YouTube, Spotify, X, Instagram, Threads & 1800+ sites — right from your terminal.
Maintainers
Readme
Download videos from YouTube, TikTok, Instagram, X/Twitter, Threads and 1,800+ other sites. Download songs and playlists from Spotify with full metadata. Paste a link, pick a format, done.
No popups, no fake download buttons, no sketchy redirects.
Install
npm install -g mediadl-cliOr run without installing:
npx mediadl-cliRequires Node 18+. yt-dlp, FFmpeg, spotdl, and Deno are installed automatically on first use.
Usage
$ mediadl https://youtu.be/dQw4w9WgXcQ # pick a format, download
$ mediadl https://open.spotify.com/track/... # download a single track
$ mediadl https://open.spotify.com/playlist/... # download full playlist
$ mediadl https://www.tiktok.com/... # download a video
$ mediadl # prompts for a link
$ mediadl --theme dark # force dark modeScreenshots
Keyboard Shortcuts
| Key | Action |
|-----|--------|
| up/down or j/k | Navigate formats |
| Enter | Confirm / Download |
| Esc | Go back |
| Tab | Paste clipboard URL |
| Ctrl+T | Cycle theme |
| Ctrl+C | Quit |
How It Works
- YouTube & 1800+ sites — Powered by yt-dlp. Standalone binary downloaded to
~/.mediadl/binon first run. - Spotify — Powered by spotdl. Auto-installed via pip. Also installs Deno for YouTube downloads.
- FFmpeg — For merging streams and MP3 extraction. Uses system FFmpeg or bundled fallback.
- UI — Built with Ink (React for the terminal).
Output Locations
| Source | Location |
|--------|----------|
| YouTube, TikTok, etc. | ~/Downloads/ |
| Spotify single track | ~/Downloads/ |
| Spotify playlist/album | ~/Downloads/<Playlist Name>/ |
Development
git clone https://github.com/kevlarclint/mediadl-cli.git
cd mediadl
npm install
npm run build # bundle to dist/
npm run dev # rebuild on change
npm run test # run tests
npm run typecheck # check typesTo try it globally: npm link, then run mediadl anywhere.
Credits
Forked from yoinks by Pablo Stanley.
Built with:
