Skip to content

Repository files navigation

AutoShorts

Python FastAPI React TypeScript AI Powered

Generate complete short-form videos from a topic or custom script using AI.


AutoShorts transforms a simple idea into a ready-to-publish short-form video. Enter a topic or paste your script — the platform handles the rest.

Automatically generates:

  • Script — AI-written narration tailored to your topic
  • Voiceover — Local text-to-speech narration
  • Captions — Burned-in subtitles for Shorts
  • Scene Plan — Structured visual breakdown per beat
  • Visual Assets — Stock footage and images from Pexels & Pixabay
  • Final Video — Vertical 1080×1920 MP4, ready to download
  • Metadata — Title and YouTube-ready description with hashtags

Real-World Usage

AutoShorts is actively being used to generate and publish short-form educational content.

All videos published on the channel below are generated using this project:

YouTube Channel: ThinkAssests

Visitors can explore the channel to see real examples of AutoShorts-generated content in production.

Content topics include:

  • Business
  • Finance
  • AI
  • Technology
  • History
  • Science
  • Educational Stories
  • Curiosity-Based Facts

Early Results

Within the first 48 hours of testing:

  • 16+ Shorts published
  • 15,000+ total views generated
  • Multiple categories tested
  • Real-world validation of the AutoShorts pipeline

These results were achieved during early-stage testing and continue to evolve as the platform improves.

Interested in seeing AutoShorts in action?

Visit the YouTube channel and explore videos generated by the platform:

https://www.youtube.com/@ThinkAssests


Screenshots

Create Studio — topic & custom script

Create Studio — Topic Mode and Custom Script


Features

Topic Mode Enter a Shorts idea — AI writes the script and runs the full pipeline
Custom Script Mode Bring your own narration — skip script generation, keep everything else
AI Script Generation Local LLM (Ollama) crafts concise, Shorts-optimized scripts
Voice Generation Piper TTS produces natural narration audio
Automatic Captions Script-timed or Whisper-based subtitles, burned into the final video
Scene Planning Agent Breaks narration into timed scenes with visual descriptions
Visual Search Agent Finds and assembles stock clips and images per scene
Video Rendering FFmpeg builds a polished vertical Short with captions
Modern Frontend React + Vite studio UI with landing page, progress tracking, and results
FastAPI Backend REST API for generation, progress polling, and artifact delivery
Local AI Processing Ollama, Piper, and Whisper run on your machine — no cloud AI required

Workflow

Topic / Custom Script
        ↓
Script Generation
        ↓
Voice Generation
        ↓
Caption Generation
        ↓
Scene Planning
        ↓
Visual Search
        ↓
Video Rendering
        ↓
Final MP4 Output

Two ways in, one path out. Topic mode generates the script first; custom script mode starts at voice. Both produce the same publish-ready MP4 and metadata.


Tech Stack

Frontend

  • React
  • TypeScript
  • Vite
  • Tailwind CSS
  • Framer Motion

Backend

  • FastAPI
  • Python

AI

  • Ollama
  • Local LLMs (Llama 3)

Media Processing

  • FFmpeg
  • MoviePy

Assets

  • Pexels API
  • Pixabay API

Project Structure

AutoShorts/
├── frontend/          # React web app (landing, create, processing, result)
├── backend/           # FastAPI server, job manager, pipeline runner
├── agents/            # Scene, visual timeline, and asset agents
├── public/            # Demo video and README screenshots
├── videos/            # Rendered output MP4s
├── jobs/              # Per-run API artifacts
├── scripts/           # Generated script, title, and description
├── assets/            # Timeline clips and search cache
├── main.py            # CLI pipeline entry point
└── Readme.md

Installation

Prerequisites

  • Python 3.13
  • Node.js 18+
  • FFmpeg and ffprobe on PATH
  • Ollama with Llama 3 (ollama pull llama3)
  • Piper TTS + voice model under models/piper/

1. Clone the repository

git clone https://github.com/your-username/AutoShorts.git
cd AutoShorts

2. Install backend dependencies

pip install -r requirements.txt

3. Install frontend dependencies

cd frontend
npm install
cd ..

4. Configure environment

Create a .env file in the project root:

PEXELS_API_KEY=your_pexels_key
PIXABAY_API_KEY=your_pixabay_key

Optional — frontend API URL (frontend/.env):

VITE_API_BASE_URL=http://127.0.0.1:8000

5. Start the backend

From the project root:

python -m uvicorn backend.api:app --reload

API runs at http://127.0.0.1:8000 · Docs at http://127.0.0.1:8000/docs

6. Start the frontend

In a second terminal:

cd frontend
npm run dev

Open http://localhost:5173Get Started → create your first Short.

CLI (optional)

Run the full pipeline from the terminal without the UI:

python main.py "What is compound interest?"

Environment Variables

Variable Required Description
PEXELS_API_KEY Yes Pexels API key for stock videos and images
PIXABAY_API_KEY Yes Pixabay API key for image fallback
VITE_API_BASE_URL No Frontend API base URL (default http://127.0.0.1:8000)

Never commit real API keys. Use .env locally and keep it out of version control.


Future Improvements

  • YouTube Upload Agent — One-click publish with metadata
  • Multi-language Support — Scripts, voice, and captions in more languages
  • AI Thumbnail Selection — Smart cover frame picking from the timeline
  • Asset Caching — Faster re-runs for repeated topics
  • Faster Rendering — Parallel FFmpeg passes and preset tuning
  • Cloud Deployment — Hosted API and optional GPU workers

Contributing

Contributions are welcome.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Commit your changes (git commit -m "Add my feature")
  4. Push to the branch (git push origin feature/my-feature)
  5. Open a Pull Request

Please keep changes focused and match existing code style.


License

MIT License

Copyright (c) 2026 AutoShorts

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


AutoShorts — From idea to Short in minutes.

About

No description, website, or topics provided.

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages