Views
No views yet
| Layer | Technology |
|---|---|
| Backend | Node.js + Express |
| Video Engine | yt-dlp (via yt-dlp-wrap) |
| Frontend | Vanilla HTML/CSS/JS (single page) |
choco install yt-dlppip install yt-dlpbrew install yt-dlpsudo apt install yt-dlpAfter installing, verify withyt-dlp --version. The server uses theyt-dlpcommand on PATH by default. To use a custom path, editYT_DLP_PATHin server.js.
1# Clone or download this repository
2cd youtube-downloader
3
4# Install Node.js dependencies
5npm installnpm startPORT=8080 npm start| Method | Endpoint | Description |
|---|---|---|
| GET | /api/info?url= | Extract video metadata and available formats |
| POST | /api/download | Start a download (body: {url, format}) |
| GET | /api/status/:jobId | Poll download progress |
| GET | /api/downloaded | List all downloaded files |
| GET | /api/file/:filename | Download / serve a saved file |
| DELETE | /api/file/:filename | Delete a saved file |
youtube-downloader/
├── server.js # Express server + yt-dlp integration
├── public/
│ └── index.html # Single-page frontend (UI + client JS)
├── downloads/ # Downloaded files stored here (auto-created)
├── package.json
└── README.md