MoneyPrinter is a local-first automation platform that turns a single idea into a finished vertical video and publishes it to YouTube, Twitter/X, TikTok, and Instagram — all from one dashboard, with one click.
0
stars
10
commits
Python
primary language
Jun 7, 2026
updated
From idea to published YouTube Short — fully automated, 100% local, near-zero cost.
MoneyPrinter is a local-first automation platform that turns a single idea into a finished vertical video and publishes it to YouTube, Twitter/X, TikTok, and Instagram — all from one dashboard, with one click.

Most "AI video" tools charge $30–$100/month per seat, lock you into their cloud, and still need you to babysit every step. MoneyPrinter is different:

Pick a topic. Press Generate Short. That's it.
| Stage | What happens | Default engine |
|---|---|---|
| 1. Research | Pulls trending ideas and angles from the web | 9Router tavily/search |
| 2. Script | Writes a hook → body → CTA short-form script | Ollama / OpenAI-compatible |
| 3. Images | Generates 9:16 scene images for every beat | Gemini image preview |
| 4. Voice | Reads the script in the chosen language/voice | KittenTTS / Edge-TTS / Gemini TTS |
| 5. Subtitles | Transcribes audio into timed .srt captions | Whisper / Gemini STT |
| 6. Compose | Stitches 1080×1920 MP4 with music + captions | MoviePy + ImageMagick |
| 7. Publish | Uploads to YouTube + cross-posts to socials | Selenium automation |
Every stage writes to a session folder, so if anything fails you can resume or regenerate from the broken step — no lost work.


A chat workspace that researches trends, brainstorms video ideas, and pushes the winning idea straight into a YouTube session. No more copying between tabs.



| Tool | Monthly cost | Local? | 1-click? |
|---|---|---|---|
| MoneyPrinter | $0 (or your own LLM endpoint) | ✅ | ✅ |
| OpusClip / Vizard | $30–$60/mo | ❌ | partial |
| Pictory / InVideo | $25–$75/mo | ❌ | partial |
| Manual editing | "free" + 4 hrs/video | — | ❌ |
You bring the hardware (a Windows PC + Python 3.12 + Firefox). We bring the pipeline.
Use this path when you only want to run the app.
# 1. Clone & enter
git clone https://github.com/mad-agentic/MoneyPrinter-short-video.git
cd MoneyPrinter-short-video
# 2. Copy config
copy config.example.json config.json
# 3. Install everything (Python venv + npm)
setup.bat
# 4. Launch the hub
start_hub.bat
Open http://localhost:5174 and you are live.
start_hub.bat checks backend port 15001 and frontend port 5174 before launch. If another process owns either port, stop that process or change ports before starting the hub.
Need the full local setup guide? Read docs/PROJECT_USAGE_VN.md.
Backend API:
http://127.0.0.1:15001· Frontend UI:http://localhost:5174
| Dependency | Purpose | Required? |
|---|---|---|
| Python 3.12 | Backend + video pipeline | ✅ |
| Node.js 18+ | React frontend | ✅ |
| Firefox + Selenium profile | Auto-upload to YouTube / X | For publishing |
| ImageMagick 7.x | Subtitle rendering | ✅ |
| FFmpeg | Encode audio/video | ✅ |
| Ollama or any OpenAI-compatible endpoint | LLM scripting | At least one |
| 9Router / Gemini API | Recommended image + TTS + STT + search | Optional, with local fallback |
Minimum: 0 paid API keys. The app is wired to fall back to fully local models at every stage.
config.example.json to config.json.config.json, set at least:
imagemagick_pathsetup.bat once to create the Python virtual environment and install frontend packages.start_hub.bat for normal use.http://localhost:5174.Manual review is the default publish mode. Auto publish should be enabled only after account paths, metadata, and output video are verified.
Manual debug commands:
# Backend only
cd src
..\venv\Scripts\python.exe -m uvicorn api.main:app --port 15001 --reload
# Frontend only
cd frontend
npm run dev -- --host 127.0.0.1 --port 5174
Do not commit local runtime files: config.json, .env, .mp/, browser profiles, generated media, venv/, or frontend/node_modules/.
src/
api/ FastAPI backend (port 15001)
main.py /system endpoints
youtube.py /youtube video pipeline
twitter.py /twitter posting
affiliate.py /affiliate products
session_manager.py
classes/ YouTube / Twitter / AFM / Tts / Outreach / PostBridge
providers/ 9Router, Ollama, OpenAI-compatible adapters
frontend/ React 19 + Vite (port 5174)
docs/ Screenshots, skills, this GitPage site
.mp/sessions/ Per-video session files (auto-resume state)
Compose once. Publish to:
post_bridge.enabled, API key, platforms, and account IDs are configured.| Screenshot | Description |
|---|---|
1clickGeneratetovideo.png | Main YouTube workspace — 1-click generation |
Info Step123.png | Script editor + audio text + language selector |
info step456.png | CC draft, image engine, generation progress |
Generatiom progress.png | Live pipeline progress + media gallery |
Research.png | Research & Ideas chat workspace |
Twitter.png | Twitter/X multi-account manager |
Afiliate.png | Affiliate CRM + product pitches |
setting llm.png | LLM backend + model selection |
setting runtime.png | Runtime + browser + encoding settings |
MIT — bring your own models, your own proxies, your own workflows. Use freely.
5 commits
5 commits
Python
57.5%
TypeScript
39.8%
CSS
1.2%
MoneyPrinter is a local-first automation platform that turns a single idea into a finished vertical video and publishes it to YouTube, Twitter/X, TikTok, and Instagram — all from one dashboard, with one click.
0
stars
10
commits
Python
primary language
Jun 7, 2026
updated
From idea to published YouTube Short — fully automated, 100% local, near-zero cost.
MoneyPrinter is a local-first automation platform that turns a single idea into a finished vertical video and publishes it to YouTube, Twitter/X, TikTok, and Instagram — all from one dashboard, with one click.

Most "AI video" tools charge $30–$100/month per seat, lock you into their cloud, and still need you to babysit every step. MoneyPrinter is different:

Pick a topic. Press Generate Short. That's it.
| Stage | What happens | Default engine |
|---|---|---|
| 1. Research | Pulls trending ideas and angles from the web | 9Router tavily/search |
| 2. Script | Writes a hook → body → CTA short-form script | Ollama / OpenAI-compatible |
| 3. Images | Generates 9:16 scene images for every beat | Gemini image preview |
| 4. Voice | Reads the script in the chosen language/voice | KittenTTS / Edge-TTS / Gemini TTS |
| 5. Subtitles | Transcribes audio into timed .srt captions | Whisper / Gemini STT |
| 6. Compose | Stitches 1080×1920 MP4 with music + captions | MoviePy + ImageMagick |
| 7. Publish | Uploads to YouTube + cross-posts to socials | Selenium automation |
Every stage writes to a session folder, so if anything fails you can resume or regenerate from the broken step — no lost work.


A chat workspace that researches trends, brainstorms video ideas, and pushes the winning idea straight into a YouTube session. No more copying between tabs.



| Tool | Monthly cost | Local? | 1-click? |
|---|---|---|---|
| MoneyPrinter | $0 (or your own LLM endpoint) | ✅ | ✅ |
| OpusClip / Vizard | $30–$60/mo | ❌ | partial |
| Pictory / InVideo | $25–$75/mo | ❌ | partial |
| Manual editing | "free" + 4 hrs/video | — | ❌ |
You bring the hardware (a Windows PC + Python 3.12 + Firefox). We bring the pipeline.
Use this path when you only want to run the app.
# 1. Clone & enter
git clone https://github.com/mad-agentic/MoneyPrinter-short-video.git
cd MoneyPrinter-short-video
# 2. Copy config
copy config.example.json config.json
# 3. Install everything (Python venv + npm)
setup.bat
# 4. Launch the hub
start_hub.bat
Open http://localhost:5174 and you are live.
start_hub.bat checks backend port 15001 and frontend port 5174 before launch. If another process owns either port, stop that process or change ports before starting the hub.
Need the full local setup guide? Read docs/PROJECT_USAGE_VN.md.
Backend API:
http://127.0.0.1:15001· Frontend UI:http://localhost:5174
| Dependency | Purpose | Required? |
|---|---|---|
| Python 3.12 | Backend + video pipeline | ✅ |
| Node.js 18+ | React frontend | ✅ |
| Firefox + Selenium profile | Auto-upload to YouTube / X | For publishing |
| ImageMagick 7.x | Subtitle rendering | ✅ |
| FFmpeg | Encode audio/video | ✅ |
| Ollama or any OpenAI-compatible endpoint | LLM scripting | At least one |
| 9Router / Gemini API | Recommended image + TTS + STT + search | Optional, with local fallback |
Minimum: 0 paid API keys. The app is wired to fall back to fully local models at every stage.
config.example.json to config.json.config.json, set at least:
imagemagick_pathsetup.bat once to create the Python virtual environment and install frontend packages.start_hub.bat for normal use.http://localhost:5174.Manual review is the default publish mode. Auto publish should be enabled only after account paths, metadata, and output video are verified.
Manual debug commands:
# Backend only
cd src
..\venv\Scripts\python.exe -m uvicorn api.main:app --port 15001 --reload
# Frontend only
cd frontend
npm run dev -- --host 127.0.0.1 --port 5174
Do not commit local runtime files: config.json, .env, .mp/, browser profiles, generated media, venv/, or frontend/node_modules/.
src/
api/ FastAPI backend (port 15001)
main.py /system endpoints
youtube.py /youtube video pipeline
twitter.py /twitter posting
affiliate.py /affiliate products
session_manager.py
classes/ YouTube / Twitter / AFM / Tts / Outreach / PostBridge
providers/ 9Router, Ollama, OpenAI-compatible adapters
frontend/ React 19 + Vite (port 5174)
docs/ Screenshots, skills, this GitPage site
.mp/sessions/ Per-video session files (auto-resume state)
Compose once. Publish to:
post_bridge.enabled, API key, platforms, and account IDs are configured.| Screenshot | Description |
|---|---|
1clickGeneratetovideo.png | Main YouTube workspace — 1-click generation |
Info Step123.png | Script editor + audio text + language selector |
info step456.png | CC draft, image engine, generation progress |
Generatiom progress.png | Live pipeline progress + media gallery |
Research.png | Research & Ideas chat workspace |
Twitter.png | Twitter/X multi-account manager |
Afiliate.png | Affiliate CRM + product pitches |
setting llm.png | LLM backend + model selection |
setting runtime.png | Runtime + browser + encoding settings |
MIT — bring your own models, your own proxies, your own workflows. Use freely.
5 commits
5 commits
Python
57.5%
TypeScript
39.8%
CSS
1.2%