Social Media Downloader preview 1

Social Media Downloader

Single-page YouTube downloader with real server-side extraction via yt-dlp — video, audio, and ZIP bundles.

Tool DraftUtility ToolAvailableRp 17.000IntermediateUpdated 2026-07-10Next.js 14 (App Router), React 18, TypeScript, Tailwind CSS 3, Framer Motion, JSZip, Zod, yt-dlp (external binary), ffmpeg (external binary, optional)
Demo

Description

A single-page media downloader that performs real server-side extraction, not a mockup — paste a public YouTube link and the server runs yt-dlp, parses real metadata, and streams actual file bytes back to the browser as a single file or a ZIP bundle. Supports 360p-1080p MP4, MP3 audio, thumbnails, and subtitles, all anonymous with no login or cookies required. TikTok and Instagram adapters exist in the code but are intentionally disabled, since both platforms block anonymous server-side access. Because it spawns yt-dlp and ffmpeg as child processes, it needs to run on a Node host or VPS with Docker — it does not work on Vercel or Netlify serverless.

What Already Works

Single landing page with a URL input and automatic platform detection
Real YouTube extraction via a yt-dlp child process, returning real parsed metadata rather than mock data
Preview panel showing available formats: 360p/720p/1080p MP4, MP3 audio, thumbnails, and subtitles
Single-file download route that streams real bytes, protected by signed tokens
ZIP download route for bundling multiple selected media items
Output guardrails: max video duration, max output size, and max bundle items
Responsible-use notice and legal-scope disclaimer built into the UI
Docker deployment that auto-installs Linux yt-dlp and ffmpeg on build

What's Included

  • Full source code
  • Dockerfile and docker-compose for production deployment
  • Windows yt-dlp.exe bundled for local development
  • TikTok and Instagram adapter modules (present but disabled)
  • README and setup guide
  • AI-ready docs (PRD, technical spec, deployment, ffmpeg setup)
  • Vitest test suite
  • InMyDraft Commercial License

How to Run

  1. Unzip the source and run npm install.
  2. Copy .env.example to .env.local and set DOWNLOAD_TOKEN_SECRET (generate one with node -e "console.log(require('crypto').randomBytes(32).toString('hex'))").
  3. Run npm run dev and open http://localhost:3000 — a Windows yt-dlp.exe is already bundled in bin/ for local development.
  4. For 720p/1080p video or MP3 audio, install ffmpeg and set FFMPEG_BIN in .env.local.
  5. For production, deploy with Docker: docker compose up -d --build (this auto-installs the Linux yt-dlp and ffmpeg binaries).

Continuation Notes

  • YouTube downloads work out of the box with no login or cookies. TikTok and Instagram are code-complete but disabled until cookies are configured.
  • Requires a VPS or Docker-capable Node host to actually run downloads — the landing page alone would render on Vercel, but every download would fail there.

Known Limitations

  • Cannot deploy to Vercel or Netlify serverless — it spawns yt-dlp and ffmpeg as child processes and streams their output, which serverless runtimes can't support. Needs a VPS or Node host with Docker
  • TikTok support is disabled — the platform blocks anonymous server-side access; the adapter exists but needs cookies to re-enable, and stays brittle even then
  • Instagram support is disabled — requires cookies from a logged-in burner account to re-enable
  • Video above 360p and MP3 audio extraction require ffmpeg — 360p downloads work without it
  • No playlists, bulk downloads, or download history — single video per request, by design, with nothing stored server-side
Preview of Design Wearpack
Tool DraftUtility ToolAvailable

Design Wearpack

Public workwear design studio with live pricing and an approval flow.

Next.js 16 (App Router)React 19TypeScriptPrisma 7 + PostgreSQLnext-intl (en/id)+1

Rp 17.000

Preview of Convert PNG to PDF
Tool DraftUtility ToolAvailable

Convert PNG to PDF

Privacy-first client-side image converter with batch ZIP export.

Next.js 16 (App Router)React 19TypeScriptTailwind CSS 4pdf-lib+1

Rp 17.000