I recently built dltkk.to - a free browser-based
video downloader for TikTok, YouTube and Instagram.
Here's the tech stack and what I learned building it.
What it does
- Downloads TikTok videos without watermark
- Converts YouTube videos to MP3
- Saves Instagram Reels
- Browser based (no app installation)
- Completely free
Tech Stack
Backend: Node.js + Express
Video Processing: Custom built processing engine
Server: Linux VPS
Frontend: HTML, CSS, Tailwind
How it works
User pastes a TikTok/YouTube/Instagram URL into
the input box. The Node.js backend receives the
URL, validates the platform, then passes it to
my custom video processing engine.
The processing engine handles each platform
differently. For TikTok it strips the watermark
during the download process. For YouTube it
extracts and converts the audio stream to MP3.
Files are temporarily stored on the server and
automatically deleted after 2 minutes to save
storage space.
Building the Processing Engine
This was the hardest part of the project.
Each platform has different:
- URL structures
- Authentication requirements
- Video stream formats
- Rate limiting behavior
Had to reverse engineer how each platform
serves video content and build handlers
for each one separately.
What I learned
- Always validate URLs server side not just client
- Set timeouts on downloads (5 min max)
- Auto delete temp files (learned this the hard way)
- Each platform needs completely different handling logic
- User agent spoofing is necessary to avoid being blocked
The YouTube Problem
YouTube was by far the hardest platform.
They actively fight against third party
downloading tools. Had to build in:
- Format selection logic
- Video and audio stream merging
- Age restriction handling
- Rate limit detection and backoff
Try it
Check it out at dltkk.to
Feedback welcome especially on the Node.js
backend architecture!

Top comments (0)