slides2video · dev week 1

One command.
Web page becomes
a broadcast.

3-minute complete lecture. Zero editing. Zero variance. The web page is already A+, so every capture is A+. 100 videos = 100 identical quality.

RUN
$ python3 orchestrator.py --url [any webpage]
Core Paradigm
Web page
= After Effects. HTML/CSS/JS animations replace motion graphics.
Playwright
= Director. Clicks, scrolls, runs JS — exactly like a human.
CDP
= Camera. Browser records itself internally. No Xvfb. No x11grab.
TTS + REAPER
= Voice actor. Park씨's tone, humanized. Megaphone / bathroom / stadium presets.
Pipeline v3
P0 Script Generation script_generator.py
Claude scans the page + loads repo context → auto-generates narration in Park씨's style
P1 CDP Recording extractor.py
browser.new_context(record_video_dir=) — Chrome records itself. JS animations fully preserved.
P2 TTS Parallel Render tts_humanizer.py ✅
edge-tts → REAPER JSFX 6-stage chain → environment presets → WAV per step
P3 Assembly + Mix renderer.py
webm + WAV timeline merge → BGM mix → 9:16 1080×1920 encode
P4 YouTube Upload upload_youtube.py
Auto title / description / Shorts tags → YouTube Data API v3 → done
Two Lanes
Lane A — Human
Park씨 on camera Real face · real voice · real handwriting · APK overlay kit
Brand · Trust · 1~2×/week
Lane B — Auto
Claude as Park씨 Playwright as hands · TTS as voice · CDP as camera
Factory · Algorithm · daily
Content Funnel
3min Shorts ← auto pipeline · complete lecture
├── satisfied here → subscribe · repeat
└── want more → 15min handwriting lecture
loyal subscriber
3min
complete lecture
0
variance
A+
every time
formats