No updates detected yet. GitHub releases will appear here.
Loading the full README. The saved excerpt is shown below.
A live web dashboard showing sunny European destinations reachable by direct flight from Ireland. Destinations are sorted hottest-first, each showing a 7-day forecast, travel dates, and available airlines.
Weather data is fetched from Open-Meteo (free, no API key needed). Results are cached for 1 hour.
Open http://localhost:5000. The first load checks weather for all active destinations and takes about a minute. Subsequent loads within the hour are instant.
Railway runs the app as a persistent server, so the 1-hour cache works perfectly.Read the full README ↗A live web dashboard showing sunny European destinations reachable by direct flight from Ireland. Destinations are sorted hottest-first, each showing a 7-day forecast, travel dates, and available airlines.
Weather data is fetched from Open-Meteo (free, no API key needed). Results are cached for 1 hour.
# 1. Clone the repo
git clone https://github.com/barry1916-svg/getaway.git
cd getaway
# 2. Install dependencies
pip install -r requirements.txt
# 3. Start the app
python app.py
Open http://localhost:5000. The first load checks weather for all active destinations and takes about a minute. Subsequent loads within the hour are instant.
Railway runs the app as a persistent server, so the 1-hour cache works perfectly.
Go to railway.app and sign up with your GitHub account.
Click New Project → Deploy from GitHub repo → select barry1916-svg/getaway.
The web dashboard works without any environment variables. Railway detects the Procfile automatically and starts the app. Once the deployment turns green, click the generated URL to open your dashboard.
Every time you push to GitHub, Railway automatically redeploys.
scripts/audit_links.py checks every (airline, destination) pair in getaway.py's ROUTES table for a genuinely bookable flight, using a headless browser (these airline sites are JS-rendered SPAs, so a plain HTTP fetch can't see a client-side error). It runs daily via a scheduled cloud agent.
Because these sites' anti-bot protection can punish automated traffic (a route confirmed working by hand can still come back as a false positive under repeated automated checks), the script never treats a single BROKEN result as final — it only flags a route as confirmed_broken, safe to act on, after seeing it BROKEN on two runs in a row (state tracked in scripts/audit_state.json, which is committed so the count survives across runs). SAS is skipped (Cloudflare bot-check), and Air France/KLM/Swiss are checked but only ever reported as low-confidence — no established failure signature yet, so they're never auto-fixed.
Run it manually with:
pip install playwright && playwright install --with-deps chromium
python3 scripts/audit_links.py