Paste a link, keep the video

All in One Downloader

Library: live transfers, four connections each, and what is left for the whole queue
Year
2026
Role
Solo — design, build, release
Status
Shipped
Stack
Electron · React · TypeScript · Node.js · yt-dlp · ffmpeg

Paste any link and it lists every video on the page, with the size of each quality before a byte is fetched — then downloads them over several connections at once. The desktop app I open every day, on macOS and Windows.

01

One link, every video on the page

yt-dlp reads the page first. When it does not know the site, an in-house resolver takes over — it reads the page and its player scripts, follows embedded frames, and asks the player's own source endpoint the way the player would. If a page wants a person to click through, it opens a visible window: you pass the gate, the app catches the stream.

02

Why downloads were slow, and what fixed it

A line doing 8 MB/s was downloading at 300 KB/s. The limit was never the line — it was one connection: servers throttle per connection and a single TCP stream never opens its window. Files are now split across four connections, each writing to its own offset and journaling where it stopped, so a pause resumes only what is missing; streamed video fetches its fragments in parallel instead of one round trip at a time.

03

An encrypted vault

Some files are nobody's business. The vault encrypts each file and its name with AES-256-GCM under a key derived with scrypt; the key lives only in memory and is zeroed on lock, which also happens by itself after a quiet spell. The limits are stated plainly in the app: an open vault does not protect you from someone at your keyboard, and a forgotten passphrase is not recoverable.

04

Under the hood

  • 01Electron with a React and TypeScript interface; yt-dlp and ffmpeg found on the PATH or bundled
  • 02Size per quality before downloading, estimated from bitrate when the server will not say
  • 03Subtitle search and automatic sync to the downloaded file
  • 04macOS (arm64 + x64) and Windows builds produced by GitHub Actions on every tag
Screens — 04
Sources: every link is a group, every video shows its size per quality
01Sources: every link is a group, every video shows its size per quality
The light theme it was designed in
02The light theme it was designed in
Categories, subtitles, finished and failed apart
03Categories, subtitles, finished and failed apart
Settings, each with the reason it exists
04Settings, each with the reason it exists
Next project
Resonance
Message me on WhatsApp+90 541 365 99 01
Eren Semih YıldızLoading
Sound on · starts with your first tap
  1. 01Typefaces···
  2. 02Scene···
  3. 03Shaders···
  4. 04GPU upload···
  5. 05Screens···