Skip to main content

MoneyPrinter 💸

MoneyPrinter automates the creation of YouTube Shorts by providing a video topic. The entire workflow - from script generation to video rendering - is powered by local AI models.

What is MoneyPrinter?

MoneyPrinter is a fully Ollama-based video generation system that creates short-form videos for platforms like YouTube Shorts and TikTok. It handles:
  • Script generation using local Ollama LLMs
  • Text-to-speech via TikTok’s voice API
  • Stock video sourcing from Pexels
  • Subtitle generation with AssemblyAI or local processing
  • Video composition using FFmpeg and MoviePy
  • Optional background music mixing
  • YouTube upload automation with OAuth

Key Features

Ollama-First Architecture

Script generation and metadata creation are fully powered by local Ollama models. No cloud LLM APIs required.

Database-Backed Queue

Reliable, restart-safe job processing with Postgres. Jobs survive API/worker restarts.

Real-Time Progress Tracking

Event-based logging system with live frontend updates. See every step of the generation pipeline.

Flexible Deployment

Run locally with Python or deploy with Docker Compose. Frontend, API, worker, and database all containerized.

Architecture Overview

MoneyPrinter uses a modern queue-based architecture:
  1. Frontend (HTML/JS) - Submit generation requests and monitor progress
  2. API (Flask) - Validate input and enqueue jobs in Postgres
  3. Worker - Claim queued jobs and run the generation pipeline
  4. Database (Postgres/SQLite) - Source of truth for job state and events

Why Ollama?

  • Privacy: All AI processing happens locally on your machine
  • Cost: No per-token API charges
  • Speed: Low-latency inference with local models
  • Flexibility: Use any Ollama-compatible model (Llama, Mistral, etc.)

Use Cases

  • Content creators: Generate shorts on trending topics
  • Educators: Create bite-sized educational videos
  • Marketers: Produce product explainer shorts
  • Developers: Automate video content pipelines

Quick Example

# 1. Start Ollama and pull a model
ollama serve
ollama pull llama3.1:8b

# 2. Run MoneyPrinter
uv run python Backend/main.py
uv run python Backend/worker.py
python3 -m http.server 3000 --directory Frontend

# 3. Open http://localhost:3000 and generate a video

System Requirements

  • Python: 3.11 or higher
  • Dependencies: FFmpeg, ImageMagick, Ollama
  • Package Manager: uv (recommended)
  • Database: SQLite (local) or Postgres (Docker)

Next Steps

Quickstart

Get MoneyPrinter running in under 5 minutes

Installation

Detailed installation and prerequisites guide

Architecture

Learn about the queue-based system design

Generating Videos

How to create your first video

Community & Support

MoneyPrinter is an open-source project. Contributions and feedback are welcome through GitHub issues and discussions.

Build docs developers (and LLMs) love