gitwtfhub

wtf is movie-alert?

eziomj/movie-alert — explained in plain English

Analysis updated 2026-05-18

8PythonAudience · generalComplexity · 3/5Setup · moderate

TL;DR

A free GitHub Actions bot that pings your Telegram the moment a chosen movie, theatre, and date opens for booking on BookMyShow.

Mindmap

Mindmap is still cooking. Refresh in a few.

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why would anyone build with this?

REASON 1

Get a Telegram alert the instant a specific movie opens for booking at your chosen theatre and date.

REASON 2

Fork the repo to run your own independent watcher for a different movie or city.

REASON 3

Avoid running your own server by relying on GitHub Actions and a free external cron trigger.

REASON 4

Route around BookMyShow's block on non-Indian IP addresses using ScraperAPI.

What's in the stack?

PythonGitHub ActionsTelegram Bot APIScraperAPI

How it stacks up

eziomj/movie-alert100/awesome-machine-learningadam-s/car-diagnosis
Stars888
LanguagePythonPythonPython
Last pushed2024-08-07
MaintenanceStale
Setup difficultymoderateeasymoderate
Complexity3/51/53/5
Audiencegeneraldeveloperresearcher

Figures from each repo's GitHub metadata at analysis time.

How do you spin it up?

Difficulty · moderate Time to first run · 30min

Requires a Telegram bot token, a ScraperAPI key, and a GitHub personal access token before it works.

Wtf does this do

Movie-Alert watches BookMyShow, the Indian movie ticket booking site, and sends you a Telegram message the moment a specific movie, theatre, and date you care about opens for booking. It is meant for people trying to catch tickets the instant they go live, such as for a popular film or premiere. The whole thing runs for free using GitHub Actions instead of a server you have to keep running yourself. Because GitHub's own built in scheduler is not reliable enough for a ten minute check interval, the project relies on the free site cron-job.org to trigger the GitHub workflow every ten minutes from outside GitHub. When triggered, a Python script fetches the BookMyShow page through a service called ScraperAPI, which routes the request through an Indian IP address. This step is necessary because BookMyShow blocks requests coming from foreign or datacenter IP addresses, which is what GitHub's own servers use. The script checks whether your chosen movie, theatre, and date has switched from closed to open, and if it has, sends exactly one Telegram alert. It remembers what it last saw in a small state file so it does not send repeat alerts. Setting it up means creating a Telegram bot through BotFather, signing up for a free ScraperAPI key, adding both as secrets in your GitHub repository settings, and editing a configuration file with the movie, date, and theatre you want to watch. You also need a GitHub personal access token to let cron-job.org trigger your workflow. The project is designed to be forked, so anyone can copy it, add their own secrets and target, and run their own independent watcher and Telegram chat.

Yoink these prompts

Prompt 1
Walk me through creating a Telegram bot with BotFather and getting my chat ID for this project.
Prompt 2
Help me fill in config.json to watch a specific movie, theatre, and date on BookMyShow.
Prompt 3
Explain how to set up cron-job.org to trigger this repo's GitHub Actions workflow every 10 minutes.
Prompt 4
Show me why this project needs a ScraperAPI key and how to sign up for one.

Frequently asked questions

wtf is movie-alert?

A free GitHub Actions bot that pings your Telegram the moment a chosen movie, theatre, and date opens for booking on BookMyShow.

What language is movie-alert written in?

Mainly Python. The stack also includes Python, GitHub Actions, Telegram Bot API.

How hard is movie-alert to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is movie-alert for?

Mainly general.

View the repo → Decode another repo

This repo across BitVibe Labs

Don't trust strangers blindly. Verify against the repo.