How abhinavkumar-07/youtube-instagram-auto-uploader works
The product automates scheduled publishing of Google Drive videos to YouTube and Instagram Reels. The workflow selects an unprocessed clip, generates platform metadata, uploads it to YouTube as unlisted, and records a scheduled queue entry. At publish time, a separate runner makes YouTube public, publishes the Reel, and revokes Drive link access. The README also documents GitHub Actions as the scheduled execution mechanism; workflow internals were not sampled, so that integration is shown only at the documented level.
Main entry points: upload_unlisted.py Queue video · publish_scheduled.py Publish due items · utils.py JSON state I/O · metadata_generator.py Metadata generation
Components 15
Prepare and queue
- Queue video
upload_unlisted.py - Metadata generation
metadata_generator.py - Publish queue
publish_queue.json - Processed log
processed_log.json
Scheduled publishing
- Publish due items
publish_scheduled.py - Reel publishing
instagram_uploader.py
Shared support
- Google credentials
auth.py - OAuth setup
oauth_setup.py - JSON state I/O
utils.py
Other components
- Operator
- Google Drive
- Groq API
- YouTube
- Instagram Graph API
- GitHub Actions
Connections 23
- Operator → Queue video: runs for slot
- Operator → Publish due items: runs scheduler
- GitHub Actions → Queue video: scheduled invocation
- GitHub Actions → Publish due items: scheduled invocation
- Queue video → Google credentials: gets credentials
- Publish due items → Google credentials: gets credentials
- OAuth setup → Google credentials: uses scopes
- Queue video → Google Drive: lists and downloads
- Queue video → Metadata generation: requests metadata
- Metadata generation → Groq API: generates metadata
- Queue video → YouTube: uploads unlisted
- Queue video → Google Drive: shares file link
- Queue video → Publish queue: appends entry
- Queue video → Processed log: records file
- Queue video → JSON state I/O: loads and saves
- Publish due items → Publish queue: loads and saves
- Publish due items → YouTube: sets public
- Publish due items → Reel publishing: publishes due Reel
- Reel publishing → Instagram Graph API: creates and publishes
- Publish due items → Google Drive: revokes link access
- Publish due items → JSON state I/O: loads and saves
- Metadata generation → JSON state I/O: uses retry helper
- Reel publishing → JSON state I/O: uses retry helper