Skip to main content

Overview

This guide walks you through running MoneyPrinter V2 for the first time, from launching the CLI to executing your first automation.
Make sure you’ve completed the Installation before proceeding.

Starting MoneyPrinter V2

1

Activate your virtual environment

cd MoneyPrinterV2
source venv/bin/activate
2

Launch the CLI

python3 src/main.py
You’ll see an interactive menu with available automation options:
MoneyPrinter V2 - Main Menu
1. Twitter Bot
2. YouTube Shorts Automater
3. Affiliate Marketing
4. Find local businesses & cold outreach
5. Exit
3

Select your first automation

Choose an option by entering the corresponding number.For this quickstart, we’ll start with YouTube Shorts Automater (option 2).

Your First YouTube Short

The YouTube Shorts Automater generates and uploads short-form videos automatically.
1

Select YouTube Shorts Automater

From the main menu, enter 2 and press Enter.
2

Configure video settings

The CLI will prompt you for:
  • Topic: What your video should be about (e.g., “interesting science facts”)
  • Background music: Path to music ZIP file (optional, configured in config.json as zip_url)
  • Upload schedule: Immediate or scheduled via CRON
For your first run, choose a simple topic and skip scheduling.
3

Generate the video

MoneyPrinter V2 will:
  1. Generate script using Ollama LLM (based on your topic)
  2. Create voiceover using KittenTTS
  3. Generate images using Gemini API (Nano Banana 2)
  4. Add subtitles using faster-whisper or AssemblyAI
  5. Compose final video with MoviePy
This process takes 2-5 minutes depending on your hardware and configuration.
4

Upload to YouTube

Once generated, the video is automatically uploaded to YouTube Shorts using your Firefox profile credentials.
Ensure you’re logged into YouTube in your configured Firefox profile before running the automation.

Your First Tweet

The Twitter Bot generates and posts tweets automatically.
1

Select Twitter Bot

From the main menu, enter 1 and press Enter.
2

Configure tweet settings

The CLI will prompt you for:
  • Topic/niche: What your tweets should focus on
  • Language: Configured in config.json as twitter_language (default: English)
  • Schedule: Immediate or scheduled via CRON
3

Generate and post

MoneyPrinter V2 will:
  1. Generate tweet text using Ollama LLM
  2. Open Twitter using your Firefox profile
  3. Post the tweet automatically using Selenium
Make sure you’re logged into Twitter/X in your configured Firefox profile.

Affiliate Marketing

Automate Amazon affiliate marketing by posting product recommendations to Twitter.
1

Select Affiliate Marketing

From the main menu, enter 3 and press Enter.
2

Configure product search

Enter:
  • Product niche (e.g., “tech gadgets”, “fitness equipment”)
  • Amazon affiliate tag (your affiliate ID)
3

Generate affiliate posts

MoneyPrinter V2 will:
  1. Search Amazon for products in your niche
  2. Generate promotional text using Ollama
  3. Create affiliate links with your tag
  4. Post to Twitter with product details and link

Local Business Outreach

Scrape Google Maps for local businesses and send cold outreach emails.
1

Select Business Outreach

From the main menu, enter 4 and press Enter.
2

Configure scraper

Set in config.json:
{
  "google_maps_scraper_niche": "coffee shops in San Francisco",
  "scraper_timeout": 300,
  "email": {
    "smtp_server": "smtp.gmail.com",
    "smtp_port": 587,
    "username": "[email protected]",
    "password": "your_app_password"
  },
  "outreach_message_subject": "I have a question...",
  "outreach_message_body_file": "outreach_message.html"
}
3

Create outreach template

Create outreach_message.html in the project root:
<p>Hi {{COMPANY_NAME}},</p>
<p>I noticed your business and wanted to reach out...</p>
<p>Best regards</p>
{{COMPANY_NAME}} is automatically replaced with each business name.
4

Run the scraper

MoneyPrinter V2 will:
  1. Download Google Maps scraper (Go-based tool)
  2. Scrape businesses matching your niche
  3. Extract email addresses
  4. Send personalized outreach via your SMTP server

Scheduling Automations

All automations support CRON-style scheduling for recurring execution.
When prompted about scheduling, you can set up automated runs at specific intervals.
Example schedules:
  • Every hour: Post tweets hourly throughout the day
  • Daily at 9 AM: Upload one YouTube Short every morning
  • Weekly: Send outreach emails every Monday
Scheduling is handled via the built-in schedule library and runs in the background.

Using Scripts

For direct automation without the interactive CLI, use helper scripts:

Upload Video Directly

bash scripts/upload_video.sh
This script uploads a video to YouTube without going through the main menu.
All scripts must be run from the project root directory.

Configuration Reference

Key configuration options for your first automations:
{
  "ollama_model": "llama3.2:3b",
  "nanobanana2_api_key": "your_gemini_key",
  "tts_voice": "Jasper",
  "whisper_model": "base",
  "imagemagick_path": "/usr/bin/convert",
  "firefox_profile": "/path/to/firefox/profile",
  "is_for_kids": false,
  "script_sentence_length": 4,
  "threads": 2
}

Common Issues

Problem: Selenium can’t control the browserSolution:
  1. Verify your Firefox profile path in config.json
  2. Ensure you’re logged into the required accounts in that profile
  3. Try running with "headless": false to see what’s happening
Problem: MoviePy or ImageMagick errors during video creationSolution:
  1. Run preflight checks:
    python3 scripts/preflight_local.py
    
  2. Verify ImageMagick path in config.json
  3. Check that threads is set to a reasonable value (2-4)
Problem: Text generation hangs or failsSolution:
  1. Ensure Ollama is running:
    ollama serve
    
  2. Verify your model is pulled:
    ollama list
    
  3. Test the model:
    ollama run llama3.2:3b "Hello"
    
Problem: Image generation failsSolution:
  1. Verify your API key is correct in config.json
  2. Or set environment variable:
    export GEMINI_API_KEY="your_key_here"
    
  3. Check your API quota at Google AI Studio

Next Steps

Now that you’ve run your first automations, explore:
Join the Discord community for support and to share your results!

Build docs developers (and LLMs) love