This repository contains a fully automated system that generates and posts Reddit stories to three major platforms: TikTok, Instagram Reels, and YouTube Shorts.
If you're looking into this, you likely know that 1 million views on TikTok can earn around €20. This tool will automatically produce brain-rotting videos with zero effort after the initial setup. With multiple accounts, you can scale this infinitely and potentially make a decent profit.
The base of this project is a heavily modified version of RedditVideoMakerBot. I’ve extended it with features such as:
After setup, you can let this brain-rot farm automatically generate passive income. Sample Results: MyTikTokProfile
config.toml
, you can even delete config.toml and call main.py to generate a brand new config from scratch through the wizzard.[!WARNING] Windows is not fully supported you will need to solve the Python dependency issues you occur, also istagrapi (the unofficial Instagram API used for uploading to Instagram is not available on windows)
To avoid problems you can use WSL, don`t get me wrong you can set-up the environment in Windows by please DO NOT open any issues in the repo if you are using Windows
Set up a virtual environment:
python3.12 -m venv venvDigger
source venvDigger/bin/activate
naming matter for the Automator.sh script
Install the required dependencies:
pip install -r requirements.txt
pip install pydantic==2.7.4 # to fix dependency mismatch
Deactivate the virtual environment:
deactivate
Set up TikTok uploader:
cd uploaders/TiktokAutoUploader
python3.12 -m venv .tokvenv
source .tokvenv/bin/activate
pip install -r requirements.txt
cd uploaders/TiktokAutoUploader/tiktok_uploader/tiktok-signature/
npm i
npx playwright install
Download an undetectable "unoriginal content" Minecraft or other background video with the following command:
yt-dlp -f 'bestvideo[height=1080]+bestaudio/best' -ciw -o "%(title)s.%(ext)s" <video_url>
Place the video inside assets/backgrounds/video/
and rename it to bbswitzer-parkour.mp4
.
If you want the best sounding TTS, you will need to use ElevenLabs. The free tier allows for about 5 videos per month, or you can use multiple free-tier API keys with the provided ElevenLabsKeyRotator script (they only want a fresh email adress for you to generate a key :) .
if you want to go the elevenlabs route modify elevenLabsKeyRotator.py
and put at least 15 api keys in there (depends on how often you want to upload)
if you dont want to use elevenLabs modify Automathor.sh
and coment out the execution of elevenLabsKeyRotator.py
Generate or modify the config.toml
:
Run the following command to launch the CLI UI and finish your configuration:
python3 main.py
config.toml
directly. Here’s what you’ll need:logins shoud be executed in an enviorment that suports gui to open up a browser, you can run all scripts on some other machine and then transfer the token files to your server (keep in mind that you also need to setup the proper enviorment and pakages)
uploaders/TiktokAutoUploader
and activate the TikTok virtual environment:
source .tokvenv/bin/activate
Log in:
python3 cli.py login -n my_tiktok_username
If you’re running this on another machine, copy the CookiesDir
to your server machine.
uploaders/instagram_creds.conf
with your credentials.python3 uploaders/instaUpload.py "path_to_video" "description"
Notes:
youtube_client_secret.json
in the uploaders/
folder.python3 uploaders/youtubeUpload.py "path_to_video" "description"
your default browser will open and you will be prompted to log in and authorize access to your YouTube account. Afterward, a YTtoken.json
file will be generated.
If you’re running this on another machine, copy the YTtoken.json
to your server machine.
If you don’t have 9GB of RAM or swap space, you can switch to Vosk 0.15 small. However, the captions might not be as accurate. To switch models, modify captionsGen.py
to use vosk-model-small-en-us-0.15
.
Once you've tested each component, run the full flow with:
./RunFullFlowInstant.sh
To automate it, create a cron job:
0 */7 * * * su user -c "/home/user/RedditVideoMakerBot-master/Automator.sh"
I recommend setting it to every 7 hours. The Automator.sh
script also includes a built-in random delay between 2 minutes and 3 hours.
You can scale up this whole operation and setup multiple enviorments with diffrent accounts, just set them up in a non-interfiaring schedule