itch.io Web Jam Submission Deadline Badge
Free to download on every platform. Comes pre-installed on BotFone, BotPad and BotFlip — with extra free apps included.
About this app
WHAT IT DOES
This tool helps you stay on top of itch.io game jam submission deadlines. It scans jam pages for submission deadline dates and times, displaying each jam with a live countdown timer showing exactly how much time remains. Each jam shows its current status—Open (green), Upcoming (blue), or Closed (red)—along with a summary showing total jams and counts by status. Quick "Submit" or "View" buttons open the jam submission page in a new tab. Desktop notifications alert you when a jam deadline is approaching, with a user-configurable lead time (default 24 hours). The countdown updates every second in real-time.
WHERE IT RUNS
The script activates on itch.io pages (itch.io), including jam listing pages, jam detail pages, and the jams dashboard. It automatically detects jam entries using multiple extraction strategies that work across different itch.io layouts. The panel appears as a draggable overlay that stays accessible as you browse jams.
HOW TO USE
Navigate to any itch.io page containing game jams. The panel will appear showing all detected jams with their status and countdown timers. Set the "Notify" input to control how many hours/days before the deadline you receive a notification (default 24 hours). Choose the unit (hours or days) for the lead time. Set the "Refresh (s)" input to control how often the script checks for updates (default 60 seconds). Toggle "Show Closed" to view or hide closed jams. The "Scan" button manually refreshes the list, and "Reset Alerts" clears all notification flags so you can test reminders. Click "Submit" on any open jam to open its submission page, or "View" on closed/upcoming jams to see the jam page. The countdowns update every second.
THE TECHNICAL MECHANISM
The script employs a multi-strategy DOM extraction approach for itch.io's jam interface. It first attempts structured selectors targeting known class names like .jam-item, .game-jam-item, and .jam-card, then falls back to heuristic detection of jam containers based on content patterns including "Jam" or "jam" keywords. Jam name extraction prioritizes dedicated title elements and falls back to parsing the first non-numeric text line. Deadline extraction uses multiple regex patterns to capture dates and times in various formats, with time parsing supporting both 12-hour and 24-hour formats. Status determination compares the current time against the extracted deadline—if the deadline has passed, the jam is marked as "closed"; if the deadline is in the future, it's "open"; if no deadline is detected but the text indicates it's upcoming, it's marked as "upcoming". The countdown timer uses setInterval with 1-second granularity, computing the difference between the current time and each jam's deadline. The notification system uses GM_notification with a storage-based deduplication system using GM_setValue to prevent repeated reminders per jam. The auto-refresh uses setInterval with a user-configurable interval, and a MutationObserver watches for page updates. All settings are persisted using GM_setValue.
THE PANEL
The panel is fully draggable by its header and remembers its position on the page across sessions. It can be collapsed to a small bubble using the minimize button, then restored by clicking the bubble. The panel resizes automatically to fit its content and can be closed with the Escape key or by clicking the close button. The panel's position and state persist globally, so it returns to the same location on subsequent visits.
PLEASE NOTE
Requires the free BotGentz extension to run. itch.io may update its site structure, which could affect the script's ability to detect jam data — updates will be released as needed. All jam data is read from the page and displayed locally; nothing is transmitted externally. This tool is for informational purposes only and does not automatically submit to jams. The script reads jam details from the visible page and does not access any data beyond what is visibly presented. Countdown timers are based on extracted deadline dates and may not reflect real-time changes; always verify with the official itch.io jam page.