tryvinci/vinci-clips
tryvinci/vinci-clips has 158 GitHub stars and 31 forks. Star changes are not measured yet. Last checked 2026-11-09 19:16 UTC. Last push 2026-11-04.
Open source AI-powered video clipping platform that automatically transforms long-form videos into engaging short clips optimized for social media platforms.
Measured star growth
- in 24h
- Update delayed
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalVinci Clips
Turn a long video into short vertical clips with captions. Self-hosted, open source (AGPL-3.0), runs on your machine with one Gemini API key.
If this saves you an Opus Clip subscription, please star the repo. It is the main way other people find it.
Quick start
git clone https://github.com/tryvinci/vinci-clips && cd vinci-clips && npm run install:all && cp backend/.env.example backend/.env && cp frontend/env.example frontend/.env.local && npm start
Then put your key in backend/.env (GEMINI_API_KEY=...) and open http://localhost:3000.
You need Node.js 18+ and FFmpeg on your PATH. A free Gemini API key works: https://aistudio.google.com/apikey
What it does
- Upload or import. Drag and drop a video up to 2 GB, or paste a YouTube URL.
- Transcribe. FFmpeg pulls the audio, Gemini returns word-level timestamps with speaker labels. Model is set by
LLM_MODEL(defaultgemini-2.5-flashin.env.example). - Find the clips. Gemini reads the transcript and suggests segments worth posting.
- Cut them. FFmpeg renders the suggested clips to
backend/uploads/clips. - Reframe to 9:16. Face detection (face-api.js) picks a vertical crop window around the speaker.
- Burn captions. Five caption styles: Bold Center, Neon Pop, Typewriter, Bubble Style, Minimal Clean. Rendered through SRT and FFmpeg.
- Streamer layout. Split a gameplay recording with a webcam into a stacked vertical reel.
- Local storage. Transcripts live in
backend/storage/db.json, videos inbackend/uploads. No database to run.
How it works
Next.js frontend (3000) -> Express API (8080) -> FFmpeg + Gemini API
|
backend/storage/db.json, backend/uploads/
| Path | What is there |
|---|---|
backend/src/routes/ |
upload, import, transcripts, analyze, clips, reframe, captions, streamer |
backend/src/localdb.js |
JSON file store used by the Transcript model |
frontend/src/app/ |
upload page, transcript list, transcript detail |
frontend/src/components/ |
ReframeModal, CaptionGenerator, StreamerGameplayCrop, SubjectDetection |
Configuration
| Variable | File | Default | Notes |
|---|---|---|---|
GEMINI_API_KEY |
backend/.env |
none | Required |
LLM_MODEL |
backend/.env |
gemini-2.5-flash |
Any Gemini model with audio input |
PORT |
backend/.env |
8080 |
Backend port |
NEXT_PUBLIC_API_URL |
frontend/.env.local |
http://localhost:8080 |
Where the frontend finds the API |
Docker: docker-compose up --build. See docker-setup.md.
Privacy and cost
Your video files stay on your disk. The extracted audio and transcript text are sent to the Gemini API for transcription and clip selection, so Google's API terms apply to that data. Cost is whatever Gemini charges for those calls. There is no Vinci account.
Related: Vinci
Want to generate video, not just cut it? Vinci is our MIT-licensed studio that runs image, video, voice, and lipsync models from many providers in one local app, with a price shown before each job. It also has a podcast-to-shorts workflow. If that sounds useful, give it a star too.
Contributing
Issues labeled good first issue are a good place to start. See CONTRIBUTING.md.
License
AGPL-3.0. If you run a modified version as a service, you must publish your changes. For other licensing, email [email protected].
If Vinci Clips is useful to you, a star helps a lot.
Explore related projects
ytdl-org/youtube-dl
Command-line program to download videos from YouTube.com and other video sites
141,527 starsexcalidraw/excalidraw
Virtual whiteboard for sketching hand-drawn like diagrams
135,396 starsgodotengine/godot
Godot Engine – Multi-platform 2D and 3D game engine
119,942 starsmrdoob/three.js
JavaScript 3D Library.
117,983 stars