https://github.com/kerogs/dlpcraft
YT-DLP order generators for downloading music.
https://github.com/kerogs/dlpcraft
Last synced: about 1 month ago
JSON representation
YT-DLP order generators for downloading music.
- Host: GitHub
- URL: https://github.com/kerogs/dlpcraft
- Owner: kerogs
- Created: 2026-04-22T12:06:21.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-05-02T23:49:23.000Z (3 months ago)
- Last Synced: 2026-05-03T01:26:29.340Z (3 months ago)
- Language: CSS
- Homepage: https://kerogs.github.io/dlpcraft/
- Size: 2.7 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

dlpcraft
A visual command builder for yt-dlp
[](https://kerogs.github.io/dlpcraft/)


## What is dlpcraft?
**dlpcraft** is a web UI that helps you build `yt-dlp` commands without memorizing flags.
Paste a URL, toggle the options you need, and get a ready-to-run terminal command.
## Features
- **Source auto-detection**: paste a URL and the source selector updates automatically
- **Predefined flag sets**: per source (YouTube & SoundCloud)
- **Advanced parameters panel**: toggle individual yt-dlp flags with descriptions
- **Preconfigured yt-dlp command**: Use preconfigured command lines to get results faster and with better quality.
## Requirements
### Required
| Tool | Purpose |
|------|---------|
| [yt-dlp](https://github.com/yt-dlp/yt-dlp) | The actual downloader, dlpcraft generates commands for it |
### Optional but recommended
| Tool | Purpose |
|------|---------|
| [ffmpeg](https://ffmpeg.org/download.html) | Required for audio conversion, metadata tagging, and thumbnail embedding |
> [!NOTE]
> `yt-dlp` alone can download audio streams, but it cannot convert formats (e.g. to mp3), write ID3 tags, or inject cover art into audio files. ffmpeg is the post-processor that handles all of that. dlpcraft will warn you in the UI when any of your active options require it.
## Getting started
**1. Get [yt-dlp](https://github.com/yt-dlp/yt-dlp/releases)**
```bash
# via pip
pip install yt-dlp
# or download the standalone binary from
# https://github.com/yt-dlp/yt-dlp/releases
```
**2. (Optional) Get ffmpeg**
Download from [ffmpeg.org](https://ffmpeg.org/download.html) and make sure it is available in your PATH,
or place `ffmpeg.exe` in the same directory as `yt-dlp.exe`.
**3. Open dlpcraft**
Go to the [dlpcraft website](https:://kerogs.github.io/dlpcraft/).
You can clone the repository and run the index.html file locally if you'd like.
**4. Generate a command**
1. Select your yt-dlp binary mode (system PATH, local `.exe`, or custom path)
2. Paste an URL
3. Toggle any advanced parameters you need (optional)
4. Click **Copy command** and paste it in your terminal
### Recommended structure
If you don't want to set up the paths, you can call the files directly. We recommend the following structure:
```
dlpcraft/
├── ffmpeg.exe (optional)
└── yt-dlp.exe
```
Be sure to specify in dlpcraft that you are calling ``yt-dlp.exe`` directly. Your commands will then be executed directly by calling the exe file.
## YT-DLP binary modes
| Mode | Command used | When to use |
|------|-------------|-------------|
| `yt-dlp` | `yt-dlp` | yt-dlp is installed system-wide and available in PATH |
| `./yt-dlp.exe` | `.\yt-dlp.exe` | You downloaded the Windows standalone binary in your current directory |
| Custom path | Your path | yt-dlp is somewhere specific, e.g. `C:\tools\yt-dlp.exe` |
## SCSS
```bash
# compile SCSS (once)
sass assets/styles/scss/style.scss assets/styles/css/style.css
# or watch mode
sass --watch assets/styles/scss/style.scss assets/styles/css/style.css
```
---
## Contributing
1. Fork the repository
2. Create a feature branch - `git checkout -b feat/my-feature`
3. Commit your changes - `git commit -m "feat: add my feature"`
4. Push and open a Pull Request
When adding a new yt-dlp parameter, add it to `paramsDefs` in `composer.js` following the existing structure.
Make sure to set `requiresFfmpeg` and `youtubOnly` correctly. If you need to add any other settings, feel free to do so.
---
## License
