YoutubeDownloader
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data β all from the browser, and deployed in milliseconds.
index.ts
https://tiagovasc--e059345a37db11f0a0209e149126039e.web.val.run
A web application for downloading YouTube videos and extracting audio using yt-dlp.
- Download YouTube videos in highest quality available
- Extract audio from YouTube videos
- Clean, responsive web interface
- Progress tracking for downloads
- Support for YouTube URLs and video IDs
βββ backend/
β βββ index.ts # Main Hono server
β βββ routes/
β β βββ download.ts # Download API endpoints
β β βββ static.ts # Static file serving
β βββ services/
β βββ youtube.ts # YouTube download service
βββ frontend/
β βββ index.html # Main HTML template
β βββ index.tsx # React frontend
β βββ components/
β βββ App.tsx # Main app component
β βββ DownloadForm.tsx # Download form component
βββ shared/
βββ types.ts # Shared TypeScript types
- Enter a YouTube URL or video ID
- Choose download type:
- Video: Downloads the full video in MP4 format
- Audio: Downloads video and extracts audio in MP3 format
- Click download and wait for processing
- Uses yt-dlp for video processing
- Downloads are processed server-side
- Supports highest quality available (up to 720p for reasonable file sizes)
- Audio extraction uses MP3 format for compatibility