Coding Education Video Scene Generator for creating short, high-energy explainer videos from a script.
VibeVid turns a coding topic into timed scenes, searches visuals, applies text/transition styling, and renders a final MP4 with FFmpeg.
- Fast scene sequences designed for developer education videos.
- Fireship-inspired pacing with punchy overlays and frequent visual changes.
- Mixed visual sources: stock clips, meme GIFs, code visuals, and tool logos.
- Final output synced to segment timings.
The default pipeline is tuned toward a fast technical explainers style:
- Short scenes with denser cuts.
- Overlay templates:
big_center,lower_third,side_caption,blank,neon_box. - Transitions:
cut,zoom,fade,flash,spin.
brew tap shayyz-code/homebrew-tap
brew install vibevidgo build -o vibevid ./cmd/vibevidJSON script plan (full scene control):
./vibevid --script examples/script_git.json --output output/git_scene.mp4-s, --script: Input script path (.json) (required)-o, --output: Output video path (defaultoutput.mp4)
VibeVid uses your segment timeline directly from a JSON file.
Use this mode for:
- Precise editorial control
- Repeatable output
- Defined transitions, overlays, and visual intent
Example:
{
"segments": [
{
"start_time": 0.0,
"end_time": 1.0,
"asset_path": "local_assets/git_logo.png",
"visual_type": "logo",
"text_overlay": "GIT",
"text_template": "big_center",
"transition": "flash"
}
]
}Notes:
- Segment timings are strict: each segment MUST have valid
start_timeandend_time(where start < end). asset_pathMUST point to a local file (e.g., logo, meme, video).
The project uses GoReleaser via GitHub Actions to automate releases.
When you push a new tag, the GitHub Action will automatically:
- Build cross-platform binaries.
- Create a GitHub Release with the artifacts.
- Update the Homebrew formula in
shayyz-code/homebrew-tap.
Important: You must configure a repository secret named TAP_GITHUB_TOKEN in your GitHub repository (Settings > Secrets and variables > Actions). This should be a Personal Access Token (PAT) with repo scope so it has permission to push the formula to your separate Homebrew tap repository.
To trigger a release:
git tag -a v1.0.0 -m "Release v1.0.0"
git push origin v1.0.0make build
make run-example
make cleanMIT