vCut is a local video studio (Node + ffmpeg on your machine) with a Cloudflare Pages gate for download, install help, and updates. Source video stays on your computer — ffmpeg never runs on Cloudflare.
Start on the gate — download the package, follow the OS-specific wizard, then click Check again and Open editor.
docker compose up --build (recommended) or the native install script.http://127.0.0.1:4321.After extracting the download package (folder contains docker-compose.yml):
docker compose up --build
Boot log should show auto-captions: on (whisper.cpp) when using the Docker image.
Native install (no Docker):
./scripts/install.sh # macOS / Linux .\scripts\install.ps1 # Windows PowerShell
Requires Node.js 18+ and ffmpeg on PATH.
docker compose up --build again.VCUT_UPDATE_URL at this site’s latest.json (optional; enables in-editor update banner).Version feed: latest.json
{
"version": "2.69.0",
"url": "https://YOUR_PAGES_HOST/index.html#update",
"notes": "Release notes…",
"sha256": "…",
"download": {
"url": "https://YOUR_PAGES_HOST/downloads/vcut-2.69.0.tar.gz",
"filename": "vcut-2.69.0.tar.gz",
"size": 1234567
}
}
After deploy, run ./scripts/set-pages-host.sh https://YOUR_PAGES_HOST or ./scripts/pages-deploy.sh with VCUT_PAGES_HOST set.
docker compose up --build
For internal testing with accounts, docs links, and gate health checks from Pages:
VCUT_AUTH=on VCUT_DOCS_URL=https://YOUR_PAGES_HOST VCUT_UPDATE_URL=https://YOUR_PAGES_HOST/latest.json VCUT_CORS_ORIGINS=https://YOUR_PAGES_HOST
UAT Docker overlay:
docker compose -f docker-compose.yml -f deploy/docker-compose.uat.yml up --build
Or ./scripts/uat-agent-up.sh. See repo docs/UAT.md and deploy/README.md.
Optional: expose one always-on operator agent without opening ports. See repo deploy/README.md.
VCUT_AUTH=on. Users sign up / sign in; files isolated under VCUT_DATA_DIR.In the editor, click (i) on any tool for a quick note, Ask assistant, or Open docs (these anchors).
Keep only the selected timeline region. Drag handles or type times; Same quality or Frame-exact.
Shrink by quality/resolution or target file size (two-pass).
Change aspect for social (9:16, 1:1, 4:5, 16:9) with blur or bars.
Transcribe speech to burned subs or .srt. Needs Whisper (Docker / setup-whisper).
Title/caption overlay with position, size, colour; PNG fallback without drawtext.
Fill fields, optional storyboard, apply → Result. Works template-first or after upload.
Themed 9:16 layout chrome (Skating Kid, Traveler, Motorbike, Pro Blogger, Corporate, …).
Series + day/level, video, trick/achievement, CTA + AD.
Stat rows under the clip for practice diaries.
Milestone badge and learned skill.
Streak header with goal progress bar.
Coaching quote and tomorrow goal.
Episode-style fun moment card.
Countdown and practice time.
Week summary with progress bar.
Multi-step recipes (social, podcast, captions, highlights).
Browse a shared folder online, download selected clips, edit locally.
Tool-first home → source → CapCut-style canvas → unified Result.