obra/youtube2webpage — explained in plain English
Analysis updated 2026-05-18
Turn a lecture or tutorial video into a readable article with screenshots.
Skim a video's content as text instead of watching the whole thing.
Archive a video's captions and key frames as a self-contained webpage.
| obra/youtube2webpage | foundzigu/gujumpgate | getify/caf | |
|---|---|---|---|
| Stars | 1,303 | 1,345 | 1,360 |
| Language | JavaScript | JavaScript | JavaScript |
| Setup difficulty | moderate | hard | easy |
| Complexity | 2/5 | 4/5 | 3/5 |
| Audience | general | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires yt-dlp and ffmpeg installed separately before running.
This is a script that turns a YouTube video into a webpage you can read. The author finds text easier to learn from than video, which is the stated motivation. You give the script a YouTube URL and a folder name, and it downloads the video, extracts the closed captions, takes screenshots at regular intervals, and assembles everything into a readable HTML page. The output folder contains the webpage itself, a folder of screenshots named by their timestamp in the video, the captions file, a copy of the video, and a stylesheet for the page's appearance. The index.html file is the main readable result, combining the transcript text with the corresponding screenshots so you can follow along visually without watching the video. The script is written in Perl and depends on two external tools that must be installed separately. The first, yt-dlp, handles downloading videos from YouTube. The second, ffmpeg, is a widely used tool for processing video and audio files, used here to extract screenshots. You run the script from the command line by passing a project name and the video URL. There is a live example of the output linked in the README so you can see what a generated page looks like before trying it yourself.
A script that converts a YouTube video into a readable webpage combining its transcript and timed screenshots.
Mainly JavaScript. The stack also includes Perl, yt-dlp, ffmpeg.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly general.
This repo across BitVibe Labs
Verify against the repo before relying on details.