Developer Architecture Pipeline Telemetry Deploy Guide
MFF 2026 ยท 100% FREE & OPEN SOURCE ยท NOIR EDITION

Passkey Hotel Monitor.
Zero missed openings.

Autonomous reservation surveillance for Midwest FurFest 2026. Continuous headless browser verification, instant Telegram push alerts, and zero session timeouts. Free forever.

0 Properties Monitored
0 Sec Check Cadence
0 $ Cost Forever
Scroll

Engineered by GoodDoggoLuna.

GoodDoggoLuna
FIRST MASSIVE PROJECT

GoodDoggoLuna

Lead Developer & Systems Architect

Welcome! This hotel monitor is my very first massive engineering project. Tired of losing convention reservations to portal crashes and silent timeouts, I designed and built this autonomous monitoring engine from the ground up.

Engineered in Python with Playwright and the Telegram Bot API, the project runs 24/7 and is released 100% free and open-source for the furry fandom.

Python 3.12 Playwright Ubuntu 24.04 Telegram API Background Daemon

Why manual booking often fails.

Session Timeouts

Passkey invalidates portal sessions after 10 idle minutes, forcing full re-entry while rooms disappear.

Client-Side Rendering

Rooms load via client-side JavaScript. Basic HTTP scrapers only retrieve empty container markup.

Unscheduled Releases

Cancellations and inventory expansions release at odd hours with zero public notice.

Engineered for speed & uptime.

01

Headless Browser Pipeline

Traverses the full reservation funnel with Playwright Chromium: resolves CSRF tokens, bypasses cookie walls, inputs dates, and awaits DOM hydration.

02

Instant Push Alerts

Broadcasts structured Telegram notifications within milliseconds of inventory changes, complete with verified rates, walking distances, and booking links.

03

Differential State Tracking

Persistent JSON snapshot reconciliation guarantees alerts trigger strictly on true additions or removals, eliminating spam.

04

Zero-Trust Privacy Model

Open source and secure. Credentials stay in private environment variables. Zero analytics, zero data collection.

Automated 60-second surveillance loop.

1. Portal Handshake

Initializes a fresh Chromium browser session, bypasses cookie consent banners, and selects attendee tier.

2. Date Range Verification

Interacts with the dynamic calendar widget to set convention arrival (Dec 3) and departure (Dec 7).

3. DOM Extraction & Delta Check

Waits for single-page DOM hydration, parses all rendered property cards, and compares against state snapshot.

4. Instant Notification

Broadcasts an immediate Telegram alert with one-click reservation links the second rooms become available.

Production daemon stream.

monitor.py โ€” Production Log (Ubuntu 24.04 / GitHub)
[01:49:43 UTC] โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
[01:49:43 UTC] Passkey Hotel Monitor โ€” MFF 2026
[01:49:43 UTC] โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
[01:49:44 UTC] STEP 1: Loading splash page & session handshake...
[01:49:44 UTC] Handshake verified | Session token established
[01:49:45 UTC] STEP 2: Routing attendee tier selection...
[01:49:46 UTC] Landed on date gateway: /landing
[01:49:48 UTC] STEP 3: Selecting convention date range...
[01:49:49 UTC] Locked check-in: Dec 3, 2026
[01:49:52 UTC] Locked checkout: Dec 7, 2026
[01:49:53 UTC] Search query executed. Awaiting DOM hydration...
[01:50:18 UTC] STEP 5: Parsing hydrated hotel inventory cards...
[01:50:18 UTC] Active inventory confirmed: 4 properties
[01:50:18 UTC] โ†’ Holiday Inn Chicago O'Hare Airport
[01:50:18 UTC] โ†’ Sonesta Chicago O'Hare Airport Rosemont
[01:50:18 UTC] โ†’ Spark by Hilton Des Plaines Chicago O'Hare
[01:50:18 UTC] โ†’ Staybridge Suites Chicago O'Hare - Rosemont
[01:50:19 UTC] Telegram webhook delivery successful (HTTP 200)
[01:50:19 UTC] Cycle complete. Re-evaluating in 60s.

Deploy in minutes.

Choose your preferred execution environment below.

01

Install Packages

Run sudo apt update && sudo apt install -y python3 python3-pip python3-venv git.

02

Setup Environment

Clone repo, create virtualenv, and install Playwright via playwright install chromium --with-deps.

03

Set Credentials

Export your TELEGRAM_BOT_TOKEN and personal TELEGRAM_CHAT_ID into environment.

04

Launch Daemon

Run nohup ./start.sh > monitor.log 2>&1 & to execute continuous 60-second checks in the background.

01

Fork Repository

Fork or clone the public repository. All workflow configurations are pre-packaged.

GitHub Repo
02

Create Telegram Bot

Message @BotFather on Telegram to obtain an API token and note your chat identifier.

03

Configure Secrets

In repo Settings โ†’ Secrets, save TELEGRAM_BOT_TOKEN and TELEGRAM_CHAT_ID.

04

Enable Workflow

Go to the Actions tab and enable the workflow. Runs scheduled checks automatically in the cloud.

100% Free & Open Source.

Zero Cost Forever

No subscriptions, no fees, no paid tiers, and zero advertisements. Released as a free utility for the fandom.

Free Cloud Hosting

Runs within the standard free limits of GitHub Actions without recurring bills, or on any home Linux workstation.

Transparent Codebase

Inspect, audit, or fork every line of code on GitHub. Built with zero tracking and zero telemetry.