Inspiration
I kept seeing the same complaint from creators: you finish editing a video, and that's when the real work starts. Now you have got to turn it into a blog post, a few tweets, a LinkedIn post, and figure out a title that won't get ignored , basically rewriting the same 10 minutes of talking, five different ways, by hand. That felt like exactly the kind of repetitive task that shouldn't need a human doing it manually anymore
What it does
You give it a video (YouTube link or a local file), and it hands you back:
- A full transcript
- A blog post
- 3 tweet ideas
- A LinkedIn post
- 3 title options
A score for each one, not from AI, just plain rules checking things like title length, readability, and whether there's actually a hook That last part is the bit I care about most. Most tools stop at "AI wrote something." This one also tells you whether what it wrote is any good, before you waste time posting it.
How we built it
Four steps, four files, one command:
transcribe.pypulls the audio withyt-dlpand runs it through Whisper to get textgenerate.pysends that transcript to Gemini, once per content type (blog, tweets, LinkedIn, titles) separate requests instead of one giant prompt, because that gave noticeably better resultsscore.pygrades everything with plain Python and thetextstatlibrary , no AI needed here, which also makes it fast and easy to explainsave_output.pywrites it all to real files plus one summary reportmain.pyjust runs all four in order.Challenges we ran into
I originally built the whole thing around Groq's API, got most of it working, then hit login/account issues that ate a chunk of my time. Ended up ripping the generation module out and swapping it for Gemini instead. Annoying in the moment, but it forced me to write that part as a swappable piece rather than something hardcoded to one provider , which is probably a better design anyway
Accomplishments that we're proud of
Getting all four stages ,transcription, generation, scoring, and saving , to actually connect into one working pipeline, running off a single command, feels like the biggest win. It would have been much easier to stop at "AI writes a blog post" and call it done, but building the self-scoring step is what I'm most proud of, since it's the part that makes this more than a wrapper around a prompt. I am also glad I didn't just give up when the original API provider gave me trouble halfway through ,swapping the entire generation module over to a different provider without breaking the rest of the pipeline showed the modular structure actually held up under a real problem, not just in theory.
What we learned
Breaking one big task into separate, single-purpose prompts (one for the blog post, one for tweets, one for LinkedIn, one for titles) produced noticeably better and more consistent results than asking for everything in a single request. Smaller, focused prompts beat one giant one. I also learned that not every "smart" part of a pipeline needs to be AI. The scoring step , checking title length, word count, readability, and hooks , works better as plain rule-based code than as another model call. It's faster, cheaper, and I can actually explain exactly why something scored the way it did, which matters if this is ever something a real creator would trust. Lastly, building the API layer as a swappable piece instead of hardcoding one provider turned out to be a genuinely useful decision, not just good practice on paper , I needed that flexibility sooner than expected.
What's next for Clip-to-Everything
- A simple web interface, so it's not limited to people comfortable running a command line
- Support for longer videos by automatically chunking the transcript instead of processing it all at once
- Turning the tweet output into an actual formatted thread (numbered, split at natural breakpoints) instead of a plain list of ideas
- Letting users pick a tone or style (professional, casual, funny) before generation, instead of one fixed voice
- Expanding the scoring step with a couple more checks , like keyword relevance for SEO , while keeping it rule-based instead of relying on more AI calls
- Direct export/formatting for platform-specific posting, so the output is closer to copy-paste-ready for each platform
Built With
- content-automation
- gemini-api
- google-gemini
- natural-language-processing
- openai-whisper
- python
- speech-to-text
- textstat
- whisper
- yt-dlp
Log in or sign up for Devpost to join the conversation.