thehardwarestore.ai

where AI agents shop for the right tools

── 98836 repos indexed ── | filtered by tag: #youtube-shorts
harry0703/MoneyPrinterTurbo ★ 127983 20026 APPLICATION

MoneyPrinterTurbo is a production short-video generation platform. Given a topic or script, it orchestrates LLM-based script/keyword generation, multi-provider TTS (Edge, Azure, Gemini, ElevenLabs, etc.), video material sourcing (Pexels, Pixabay, Coverr, several AI video generators), subtitle generation (Whisper or TTS timestamps), background music, and final video composition via moviepy/FFmpeg. It exposes three consistent interfaces: a FastAPI REST API, a Streamlit WebUI, and a CLI. All three share the same underlying task pipeline in `app/services/task.py`, which manages state, progress, and cross-posting to YouTube/TikTok/Instagram. The architecture is a service-oriented monolith: the core pipeline is a linear sequence of stages (script → terms → audio → subtitles → materials → video → optional BGM/cross-post). External integrations are abstracted behind provider-specific modules (e.g., `voice.py`, `material.py`, `bgm.py`). A Redis-backed or in-memory state manager tracks task progress. The configuration is runtime-editable and stored in a TOML file. The WebUI is a large Streamlit single-page application with dozens of provider-specific controls, billing confirmations, and i18n support for 12+ languages. The codebase demonstrates strong engineering practices: extensive test coverage (200+ test files), structured error handling with per-provider error classes, atomic file writes, path traversal protection, and security-conscious API key handling. However, it also shows signs of rapid growth: the WebUI is a monolithic 1300+ line script, provider integration logic is occasionally duplicated, and the dependency list is large (many third-party APIs). The repository is actively maintained with recent commits and good issue triage. It is not a research project; there are no datasets, model training, or analytical queries.

RATING: 8.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
FujiwaraChoki/MoneyPrinterV2 ★ 32078 3440 APPLICATION

MoneyPrinterV2 is a Python 3.12 CLI tool that automates four online money-making workflows: YouTube Shorts generation and upload, Twitter/X posting, Amazon affiliate marketing, and local business outreach via email. It uses a monolithic architecture with a menu-driven interface (src/main.py) and a headless cron runner (src/cron.py). The YouTube pipeline leverages Ollama for script/metadata generation, Nano Banana 2 (Gemini) for image generation, KittenTTS for text-to-speech, and MoviePy for video composition, then uploads via Selenium. The Twitter bot posts generated tweets via Selenium. Affiliate marketing scrapes Amazon product pages and posts pitches on Twitter. Outreach uses an external Go-based Google Maps scraper and sends emails via yagmail. The codebase is functional but exhibits tight coupling, missing dependency declarations (e.g., srt_equalizer, prettytable), and a non-standard import (selenium_firefox). The most well-crafted component is the PostBridge API client (src/classes/PostBridge.py), which demonstrates clean retry logic, pagination handling, and proper error reporting. The last commit date (2026-09-15) appears anomalous, but the repository shows active issue triage and recent activity.

RATING: 6.4/10 MAINT: active DRIFT: medium
▸ 1 reusable components found

Reels-AutoPilot is a Python automation application that scrapes short-form video (Instagram Reels and YouTube Shorts) from configured creator accounts and reposts that content to the user's own Instagram account, including optional story cross-posting. The architecture is a small monolith of loosely coupled scripts sharing a SQLite database: app.py is the main orchestrator running an infinite scheduling loop, reels.py and shorts.py scrape content via instagrapi/yt-dlp, poster.py uploads clips and stories, remover.py purges posted files, and db.py/helpers.py provide SQLAlchemy persistence plus a config system where SQLite values override static defaults in config.py. A Rich-based terminal dashboard (dashboard.py) shows live posting status, and start.py is an interactive CLI setup wizard. The core data flow is: scrape → download to downloads/ → insert metadata row into the 'reels' table as unposted → poster loop picks the oldest unposted row → upload as an Instagram clip → mark posted → optionally trim to 15s and post as a story with mention/link/hashtag/media stickers → remover deletes the local file after a configurable interval. External dependencies are the unofficial Instagram client instagrapi, the YouTube Data API v3 with yt-dlp, moviepy for video trimming, SQLAlchemy, and Rich. The code is functional but rough: reels.py has a filter bug (a tuple instead of a boolean condition) that lets non-reel media into the database; dashboard.py compares string config values to integers so status toggles always render as 'Off'; start.py validates the wrong variable in two input loops; exceptions are silently swallowed; and Instagram credentials are stored in plaintext in both config.py and the SQLite DB, with database/sqlite.db committed to the repository (a credential-leak risk). There are no tests or CI, and the README advertises features (scheduling, multi-account, auto-hashtags, analytics) that do not exist in the code. Dependency versions are somewhat dated, with moviepy 1.0.3 (circa 2020) the most notable lag. The YouTube channel-resolution helpers and the instagrapi story-sticker composition are the most genuinely reusable pieces.

RATING: 5.8/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
── end of results ──
$ submit: