Mass media console

Point it at a page.
Walk away with everything.

Veloci scans listing and gallery pages, builds a persistent download queue, and pulls every video down in parallel through a yt-dlp-powered engine. Give it a page, or a whole range of them, and manage the rest from one queue.

Windows Tauri 2 Rust TypeScript Python MIT
Features

Built for bulk jobs, not one video at a time

Every control in the app is there because a queue of hundreds of videos needs it. Nothing here is decorative.

Multi-page scanning

Scan a single page or a full range like 1-20 in one go, and let it discover every video across all of them.

Concurrent downloads

Configurable parallelism with an optional per-download speed cap, so one job never chokes the rest of your connection.

Quality selection

Best down to Worst, with a direct CDN fast-path that skips re-encoding wherever a site exposes real per-quality files.

Pause / resume / cancel

Per video or across the whole queue. IDM-style control over every job, at any point, without losing progress.

Duplicate detection

A SQLite-backed queue remembers what's already been downloaded across sessions, so re-scanning never re-queues known videos.

Rich metadata

Thumbnails, titles, duration, and file size are probed and streamed into the queue as they resolve.

Search, filters, pagination

Find anything in a queue of hundreds of videos without the UI breaking a sweat.

Themed UI

A custom dark "glass" interface with five accent themes, built from scratch. No OS-native form controls.

How it works

One pipeline, four stages

The same loop runs whether you paste one page or a range of twenty.

Scan

Point it at a listing page or a page range. It crawls and discovers every video.

Queue

Every video lands in a persistent, SQLite-backed queue. Duplicates are skipped automatically.

Fetch

The yt-dlp-powered engine pulls each item down in parallel, at the quality you picked.

Save

Lands in your chosen folder, marked complete, and remembered for next time.

Make it yours

Five accent themes. Try them right here.

This isn't a preview graphic: these swatches are the app's real theme tokens. Pick one and this whole page recolors, scrollbar included.

Download All
Applying to sidebar, buttons, progress, scrollbar…
The real thing

No OS-native form controls

Every dropdown, button, and progress bar is hand-built for this theme. This is an actual screenshot, not a mockup.

Veloci desktop app UI, showing the video queue console
Under the hood

A Rust shell, a Python engine, one queue

The desktop shell and the download engine are two processes that talk over stdio. Neither one needs the other's runtime installed on the machine that runs it.

Desktop shell

Tauri 2 + Rust

Frameless window, custom titlebar, and process lifecycle: it starts, supervises, and kills the engine's process tree.

Download engine

Python + yt-dlp

httpx and selectolax do the crawling; yt-dlp does the fetching. Frozen with PyInstaller into a Tauri sidecar for distribution.

Persistence

SQLite queue

Every job, status, and piece of metadata survives a restart, which is what makes duplicate detection possible.