| # βββ Core runtime βββββββββββββββββββββββββββββββββββββ |
| flask>=3.0.0 |
| requests>=2.32.0 |
| pymongo>=4.7.0 |
| numpy>=1.26.0,<2 # moviepy 1.0.3 is not compatible with numpy 2.x |
| telethon |
| # βββ Google / YouTube API stack βββββββββββββββββββββββ |
| google-api-python-client>=2.126.0 |
| google-auth>=2.29.0 |
| google-auth-oauthlib>=1.2.0 |
| google-auth-httplib2>=0.2.0 |
| httplib2>=0.22.0 # pulled in, but list for clarity |
|
|
| # βββ Instagram + Selenium fetcher βββββββββββββββββββββ |
| python-telegram-bot[job-queue] |
| httpx |
| yt-dlp |
| # βββ Video editing stack (moviepy + codecs) βββββββββββ |
| moviepy==1.0.3 |
| imageio[ffmpeg]>=2.34.0 # moviepyβs video I/O |
| moviepy==1.0.3 |
| decorator==4.4.2 # moviepy dep |
| tqdm>=4.66.0 # moviepy progress bars |
| proglog>=0.1.10 # moviepy logging helper |
| pillow>=12.2.0,<13 # modern Pillow (required by instagrapi); ANTIALIAS shim in app.py keeps moviepy 1.0.3 working |
| nest_asyncio |
| # βββ Instagram upload (private API via netscape cookies) βββ |
| instagrapi>=2.16.0,<3 |
| pydantic>=2.12.5,<2.14 # instagrapi dependency |
| # βββ Extra utils ββββββββββββββββββββββββββββββββββββββ |
| emoji>=2.11.0 |
|
|
| # (Optional) python-dotenv if you load .env vars elsewhere |
| # python-dotenv>=1.0.1 |
|
|