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://bman101--e8e7ad4776e34b05bc9fa89177f2da83.web.val.run
Note to self: I forked this as an attempt to use it but does not seem to function and have not debugged
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