{"id":13591146,"url":"https://github.com/Capevace/youtube-dl-ui","last_synced_at":"2025-04-08T14:32:37.887Z","repository":{"id":40793212,"uuid":"206326935","full_name":"Capevace/youtube-dl-ui","owner":"Capevace","description":" Basic web UI for youtube-dl. Download a URL in highest quality, choosing between video or audio-only. ","archived":false,"fork":false,"pushed_at":"2023-03-04T20:44:52.000Z","size":446,"stargazers_count":4,"open_issues_count":6,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-04T16:51:11.360Z","etag":null,"topics":["http","socket-io","ui","web","youtube-dl","youtube-downloader"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Capevace.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2019-09-04T13:33:22.000Z","updated_at":"2023-05-31T11:18:35.000Z","dependencies_parsed_at":"2024-01-14T04:07:55.881Z","dependency_job_id":null,"html_url":"https://github.com/Capevace/youtube-dl-ui","commit_stats":null,"previous_names":["capevace/mission-control-ytdl"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Capevace%2Fyoutube-dl-ui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Capevace%2Fyoutube-dl-ui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Capevace%2Fyoutube-dl-ui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Capevace%2Fyoutube-dl-ui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Capevace","download_url":"https://codeload.github.com/Capevace/youtube-dl-ui/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247861002,"owners_count":21008405,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["http","socket-io","ui","web","youtube-dl","youtube-downloader"],"created_at":"2024-08-01T16:00:54.103Z","updated_at":"2025-04-08T14:32:37.288Z","avatar_url":"https://github.com/Capevace.png","language":"HTML","funding_links":[],"categories":["HTML"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\t\u003ca href=\"https://mateffy.me/youtube-dl-ui\"\u003e\n\t\t\u003cimg src=\"resources/screenshot-1.1.0.png\"\u003e\n\t\u003c/a\u003e\n\t\u003ch1\u003eyoutube-dl-ui\u003c/h1\u003e\n\t\u003cp\u003e\n\t\tBasic web UI for youtube-dl. Download a URL in highest quality, choosing between video or audio-only.\n\t\u003c/p\u003e\n\u003c/div\u003e\n\n\u003cbr\u003e\n\n## Overview\n\n- [Installation](#installation)\n- [Usage](#usage)\n  - [Options](#options)\n  - [Config](#config)\n    - [Environment variables \u0026 command-line flags](#environment-variables--command-line-flags)\n    - [Config file](#config-file)\n  - [Transparent mode](#transparent-mode)\n  - [Swapping out `youtube-dl`](#swapping-out-youtube-dl)\n- [Changelog](#changelog)\n\n## Installation\n\n```sh\n$ npm install -g youtube-dl-ui\n```\n\n## Usage\n\nYou can now start the server like you would any binary.\n\n```sh\n$ youtube-dl-ui\nv1.4.1\n```\n\n### Options\n\n```\nUsage: youtube-dl-ui [options]\n\nOptions:\n  -V, --version             output the version number\n  -p, --port \u003cport\u003e         the port for the http server\n  -v, --video-path \u003cpath\u003e   path to directory where videos should be saved\n  -a, --audio-path \u003cpath\u003e   path to directory where audio should be saved\n  -y, --youtube-dl \u003cpath\u003e   file path to the youtube-dl binary (so you can set\n                            it to yt-dlp)\n  -s, --socket-path \u003cpath\u003e  url path the socket should connect to (useful when\n                            proxying the server)\n  -d, --debug               enable debug mode\n  -h, --help                display help for command\n```\n\n### Config\n\n#### Environment variables \u0026 command-line flags\n\nThe following environment variables can be set, to control `youtube-dl-ui`:\n\n| Environment variable | Type                             | Command-line equivalent         |\n| -------------------- | -------------------------------- | ------------------------------- |\n| PORT                 | number (e.g. 8080)               | --port 8080                     |\n| VIDEO_PATH           | string (e.g. ~/Downloads/videos) | --video-path ~/Downloads/videos |\n| AUDIO_PATH           | string (e.g. ~/Downloads/audio)  | --video-path ~/Downloads/audio  |\n| YOUTUBE_DL           | string (e.g. /usr/bin/yt-dlp)    | --youtube-dl /usr/bin/yt-dlp    |\n| SOCKET_PATH          | string (e.g. /socket.io)         | --socket-path /socket.io        |\n| DEBUG                | boolean                          | --debug                         |\n\n#### Config file\n\n[RC](https://github.com/dominictarr/rc) is used to look for config files and can be used in the following ways:\n\n- if you passed an option `--config file` then from that file\n- `$HOME/.youtube-dl-ui/config`\n- `$HOME/.config/youtube-dl-ui`\n- `$HOME/.config/youtube-dl-ui/config`\n- `/etc/youtube-dl-ui/config`\n\nSettings from this file will be overridden, if you also set options using environment variables or command line arguments.\n\n### Transparent mode\n\nYou can append the query parameter `?transparent=1` to the UI URL. This will remove the colored background and move the content to the left.\n\nThis is used in [@capevace/mission-control](https://github.com/capevace/mission-control) to embed the download UI in an iFrame.\n\nExample:\n\n```\nhttps://example.com/youtube-dl-ui?transparent=1\n```\n\n### Swapping out [`youtube-dl`](https://youtube-dl.org/)\n\nThere are multiple forks of [youtube-dl](https://youtube-dl.org/) like [yt-dlp](https://github.com/yt-dlp/yt-dlp) which have a compatible API and can be used instead of stock youtube-dl.\n\nYou can do this by either setting the `YOUTUBE_DL=/usr/bin/yt-dlp` environment variable or by passing the `--youtube-dl /usr/bin/yt-dlp` CLI flag. _To find out your `yt-dlp` path, run `$ which yt-dlp` in your shell._\n\nExample:\n\n```bash\nyoutube-dl-ui --youtube-dl /usr/bin/yt-dlp\n\n# or\n\nYOUTUBE_DL=/usr/bin/yt-dlp youtube-dl-ui\n```\n\n## Changelog\n\n### Version 1.4.1\n\n- Fixed videos not disappearing after download\n- Added `YOUTUBE_DL` option to initial config log\n- Cleaned up `package.json` dependencies\n\n### Version 1.4.0\n\n- Added `YOUTUBE_DL` environment variable (and CLI option `--youtube-dl`) to set the [youtube-dl](https://youtube-dl.org/) binary\n  This lets you replace [youtube-dl](https://youtube-dl.org/) with forks like [yt-dlp](https://github.com/yt-dlp/yt-dlp).\n- Added empty queue view\n\n### Version 1.3.0\n\n- Added footer which shows current version\n\n### Version 1.2.1\n\n- Fixed SOCKET_PATH env variable not working as intended\n\n### Version 1.2.0\n\n- Added Docker support\n- Removed automatic config file creation, you will need to do so yourself now\n- Added configuration via environment variables\n\n### Version 1.1.0\n\n- Updated design to fit new version of @capevace/mission-control\n- Fixed some socket connection issues\n\n### Version 1.0.3\n\n- Added CLI flag for socket path\n- Added config log at startup for verification\n\n### Version 1.0.2\n\n- Changed HTML title\n\n### Version 1.0.1\n\n- Forgot to add README lol\n\n### Version 1.0.0\n\n- First polished release\n\n## Authors\n\nLukas Mateffy – [@Capevace](https://twitter.com/capevace) – [mateffy.me](https://mateffy.me)\n\nDistributed under the MIT license. See `LICENSE` for more information.\n\n## Contributing\n\n1. Fork it (\u003chttps://github.com/capevace/youtube-dl-ui/fork\u003e)\n2. Create your feature branch (`git checkout -b feature/fooBar`)\n3. Commit your changes (`git commit -am 'Add some fooBar'`)\n4. Push to the branch (`git push origin feature/fooBar`)\n5. Create a new Pull Request\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCapevace%2Fyoutube-dl-ui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCapevace%2Fyoutube-dl-ui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCapevace%2Fyoutube-dl-ui/lists"}