π
DublinBayBuoy.com
Changelog · notable releases and fixes
v3.0 β current
v3.0.0
2026-05-19
install as an app on your phone
- featInstall as a phone app. Dublin Bay Buoy is now a Progressive Web App. On Android, Chrome will prompt you to install it — or use the menu → “Install app”. On iPhone, tap Share → “Add to Home Screen”. Either way it launches full-screen, just like a native app.
- featOffline support. The app shell is cached so the interface loads even when you’re out of signal. Live data still needs a connection, but you won’t stare at a blank screen.
v2.14
v2.14.0
2026-05-14
data accuracy info + AIS receiver upgrade
- featData accuracy info panel. Tap the info icon on the dashboard to learn how our readings relate to the CIL MetOcean website — same instrument, same data, but with different update timing and post-processing.
- featUpgraded AIS receiver. Moved the live AIS receiver to a dedicated SDR antenna with better line-of-sight to the buoy, improving reception reliability.
v2.13
v2.13.7
2026-05-13
readings now stay accurate after Irish Lights revisions
- fixStale wind/wave values corrected automatically. Irish Lights routinely revise buoy readings after initial publication. Previously those corrections were never picked up, so the site could show outdated values permanently. Now every hourly poll re-checks the full day's data and applies any revisions.
v2.13.6
2026-05-10
6h chart shows data when buoy is out of range
- fix6h chart always shows observed data. When the buoy is out of AIS range, the 6-hour chart now falls back to MetOcean hourly readings instead of showing a blank chart.
- fixFuture MetOcean readings no longer appear as observed. The chart now clips observed data at the current time, so upcoming-hour rows from the MetOcean API don't create a false flat tail on the line.
- fixChart line no longer sits on the floor. Added a 10% grace buffer below the y-axis minimum so the lowest data points have breathing room.
v2.13.3
2026-05-08
proper icon + installable on home screen
- featProper site icon β a wave logo now shows in browser tabs, bookmarks, and Google search results instead of the generic globe.
- featAdd to Home Screen. On iOS or Android, "Add to Home Screen" now installs DublinBayBuoy as a standalone app with its own icon and full-screen launch.
v2.13.1
2026-05-08
brand strip fits on phones
- fix"Latest data fromβ¦" timestamp no longer gets cut off on narrow phone screens β the brand strip now stacks the URL above the timestamp when there isn't room side-by-side.
v2.13.0
2026-05-07
share-ready brand strip + tighter feedback flow
- featSticky DublinBayBuoy.com strip on every page β the URL is on every screenshot now, so when you share a wind chart in a crew chat, anyone can find their way back here.
- featLatest-data label. The timestamp now reads "Latest data from β¦" so it's obvious it's the time of the last reading, not wall-clock now.
- featLive AIS indicator hops up to the strip's right side when the boat's broadcasting fresh data β green pulse for live, amber for stale, gone for hourly-only.
- featSettings (Aa) is now a floating button, present on every page, stacked above the Feedback button.
- featFeedback flow tightened. No more accidental "Feature request" β you have to pick Feature or Bug before Send unlocks. Live character count below the box.
- featFooter "About" link is now How to β same destination, clearer label.
v2.12
v2.12.0
2026-05-07
Telegram bot is now website-first
- featThe Telegram channel @DublinBayBuoy keeps posting hourly β that part is unchanged.
- opsPersonal bot commands retired.
/now,/at,/alert,/stats,/subscribehave moved to the website β the dashboard, 7-day trends, and per-device alert settings live at dublinbaybuoy.com with a better UX./feedbackstill works in DM if you prefer it. - fixIf you'd set a wind-threshold alert via the bot, it's no longer active β sorry for the silence. Reach out via
/feedbackif you want it back; we'll prioritise per-device alerts on the website if there's demand.
v2.11
v2.11.1
2026-05-07
font size: as big as you like
- featNo more upper limit on the text-size slider. If you want bigger, you got it β keep tapping
A+until it's the size you need.
v2.11.0
2026-05-07
brand · share-friendly · one Mini App
- featThe site name now reads DublinBayBuoy.com on every page header β so when you screenshot the dashboard and share it on a WhatsApp/Telegram crew chat, anyone can find their way back here.
- featNicer link previews when sharing the site on Slack, Telegram, iMessage, or social β proper title, description, and a Dublin Bay map preview image now show up.
- opsBeta and prod Mini App are no longer two files that drift out of sync β the beta is generated from the prod source, so every fix lands on both at once.
v2.10
v2.10.3
2026-05-07
no double posts, no spinner of doom
- fixHourly channel posts no longer duplicate when the database hiccups β once a reading has been sent for the hour, that hour stays sent.
- fixWind alert no longer spam-fires during a brief outage. If you've blocked the bot, your alert is now removed automatically instead of retrying forever.
- fixSlow networks fail cleanly β fetches give up after 12 s instead of leaving the dashboard stuck on a spinner.
- secTightened the feedback endpoint's signature check (constant-time comparison) and removed a leftover internal hostname.
v2.10.2
2026-05-06
cleanup + resilience
- fixBrief upstream blips no longer create gaps in the reading history β readings caught mid-hiccup are now queued and stored once the dust settles.
v2.10.0
2026-05-06
privacy + opt-out
- secDisable analytics on this device β a one-click opt-out is now on the Privacy page. Setting persists in your browser; we also respect the Do Not Track setting automatically.
- secPrivacy policy rewritten β short, accurate, no legalese. Lists what we collect, why, how long we keep it, and how to opt out or request deletion.
- featAnonymised session replays β a small fraction of sessions (15 %, capped at 5 minutes) are recorded with all text masked, so we can spot broken layouts. The feedback sheet is fully blocked from recording. Recordings auto-delete after 60 days. Disabled if you've opted out.
- fixFeedback button works again β sending feature requests or bug reports from the website now succeeds (it was silently failing for some visitors).
v2.9
v2.9.0
2026-04-30
readable trends + targeted feedback
- featDay-of-week markers (Mon, Tue, Wedβ¦) on the Trends chart between 24 h and 7 d, so a glance tells you which day each peak landed on.
- featForecast line now picks up a darker shade of the metric's own colour β readable against the live curve and no longer clashing with the gale-warning yellow.
- featChart legend swatches now match the active metric, so "Observed" and "Forecast" are visually identifiable instead of greyed out.
- featFeedback form now asks whether you're sending a Feature request or a Bug report β speeds up triage on our side.
- featPrivacy link added to the footer alongside About / API / MCP / Changelog.
- fixLive AIS feed (the 6 h Trends view and "live" buoy updates on Now) is back after a six-day silent outage following last week's reliability cleanup.
v2.8
v2.8.0
2026-04-24
gust first on trends
- featTrends chart now defaults to Gust instead of Wind β matches what sailors actually check first. 72-hour window stays the default.
v2.7
v2.7.1
2026-04-24
anon key hotfix
- fixMini App was showing "--" for all fields β the hardcoded public API key hadn't been rotated in the frontend. Fixed.
v2.7.0
2026-04-24
reliability cleanup
- opsDatabase now backs up automatically every day. No change to URLs or responses.
- opsReduced the number of moving parts behind the scenes β fewer paths an outage can take.
- secRotated the public API key format. 3rd-party integrators: grab the new key shown in the developer docs.
v2.6
v2.6.5
2026-04-25
filter pills + prod rollout
- featChangelog page now has clickable filter pills (Feat / Fix / Perf / Sec / Ops). Filter state persists in the URL so /changelog#fix is a shareable link.
- featChangelog link now in the dashboard footer and the guide page footer, not just beta.
- fixTag-to-description spacing on this page β no more "FEATFirst-visit" crowding.
v2.6.4
2026-04-25
changelog page
- featThis changelog page β a retroactive walk through every notable release back to v1.0.
v2.6.3
2026-04-24
- opsRetired the beta-only gust-at-90Β° experiment so beta and prod stay near-identical β fewer regressions when porting.
v2.6.2
2026-04-25
map lightbox
- featTap the Dun Laoghaire or Dublin Bay circle on the Now tab to open a near-fullscreen satellite view with wind & gust particles still flowing.
- perfSatellite tiles now load in ~0.3 s instead of 2β3 s, and subsequent opens are instant.
v2.6.1
2026-04-24
gust direction fix
- fixGust arrows on the marina map were briefly drawn at a 90Β° offset on prod β reverted to the real gust bearing.
v2.6.0
2026-04-24
live view, chart revamp, web feedback
- featNew 6h range on the Trends tab β live 3-minute pulse straight from the buoy.
- featCharts revamped: amber forecast line distinct from the blue observed line, forecast horizon scales with the view (6h view β 6h ahead, longer views capped at 72h), rolling-average smoothing on 30d (24h window) and 365d (7d), default range bumped to 3d.
- featWebsite visitors can now send feedback β no Telegram account required.
- featAccessibility: text-size stepper (Aβ / A+) replaces the three-preset picker. Scales every element on the page. Default 160%.
- secFeedback messages HMAC-verified (when from Telegram), sanitized server-side, and rate-limited per user (5/hour, 20/day). Runs on a dedicated serverless function.
- fixDrift preview no longer leaks into every tab on the beta site.
v2.5 β MCP & observability
v2.5.1
2026-04-23
- opsWeb Vitals (LCP, FID, CLS) captured on every page load.
v2.5.0
2026-04-23
public MCP server
- featCurated public MCP server at mcp.dublinbaybuoy.com β AI-friendly tools (
get_current_conditions,get_wind_rose,get_forecast_skill, and more) instead of raw SQL. See /developers#mcp.
v2.4 β developer docs & hardening
v2.4.1
2026-04-23
- secHardened scraper config and capped the alerts query to prevent runaway selects.
v2.4.0
2026-04-23
developer API
- featPublic developer docs at /developers β REST API, anon key, quickstart in curl / Python / JS.
- featNew
rpc_forecast_skillβ answers "how accurate is ECMWF's wind forecast 24h out? 72h out? a week?". - secBaseline security headers across all subdomains (HSTS, nosniff, Referrer-Policy, Permissions-Policy). Strict CSP on the beta site. API key rotation runbook documented.
v2.3 β website-first pivot
v2.3.3
2026-04-23
- featFirst-visit welcome banner linking to the quick guide.
- featHelp (?) button in the header for fast access to the guide.
v2.3.2
2026-04-23
- featWebsite-first pivot β new /guide page is the public front door; Telegram channel posts now link to the website.
v2.3.1
2026-04-23
- opsInternal runbook refresh.
v2.3.0
2026-04-23
new domain
- featMigrated from
*.444b.meto dublinbaybuoy.com β friendlier URL, shareable branding.
v2.2 β wind/gust overlay
v2.2.1
2026-04-23
- featSmall wind / gust legend under the wind-direction maps.
v2.2.0
2026-04-23
- featGust overlay promoted to production β an orange particle stream layered over the blue wind stream so gusts read as a secondary flow.
v2.1 β observability
v2.1.1
2026-04-23
- fixWind particles now traverse the full map disk at any wind speed (previously stalled at low speeds).
v2.1.0
2026-04-23
metrics + outbox
- opsRED metrics on every HTTP client (bot, scraper, database) β now fed into a proper observability pipeline.
- perfScraper outbox buffers writes during brief database outages so no readings are lost.
v2.0 β architecture split
v2.0.1
2026-04-23
- fixSignalK WebSocket heartbeat + receive timeout β detects silent stalls and reconnects within seconds instead of hanging indefinitely.
v2.0.0
2026-04-17
monolith split
- featMajor rework: the monolithic bot split into a scraper service, a bot service, and a managed database backend. Each can be restarted or rescaled independently β more reliable, easier to reason about.
v1.x β live data & iteration
v1.7.02026-04-17
- fixComprehensive bugfix & cleanup pass across the whole app.
v1.6.0
2026-04-17
- featLive AIS indicator with a pulsing dot on the dashboard β you can see at a glance when the live feed is flowing.
v1.5.0
2026-04-17
- featAIS is now the primary data source when available β fresher readings than the hourly MetOcean feed. Falls back to MetOcean if SignalK goes quiet.
v1.4.02026-04-17
- featSignalK AIS poller integrated behind the scenes.
v1.3.12026-04-16
- fixTemperature forecast now uses sea-surface temperature instead of air temp.
v1.3.0
2026-04-16
- featTidal-streams visualisation on the Tides tab (beta only) β see how tide currents flow across Dublin Bay.
v1.2.42026-04-14
- opsDependency bumps: python-telegram-bot 21 β 22, aiohttp 3.11 β 3.13.
v1.2.32026-04-14
- fixFive small correctness and robustness fixes bundled together.
v1.2.22026-04-14
- opsPrivacy page is now served directly by the website.
v1.2.12026-04-14
- perfPerformance instrumentation no longer fires before the page finishes loading.
v1.2
2026-04-14
- opsRicher analytics instrumentation β tab dwell, feature usage, launch context (platform, colour scheme).
v1.1
2026-04-14
forecast drift
- featForecast-drift logging β snapshot every 30 min so we can see how successive model runs change the prediction over time.
- featDrift preview view on the beta site.
v1.0
2026-04-13
initial public release
- featMini App with Now / Trends / Tides / Stats tabs.
- featGale F8 reference line + Beaufort axis on wind charts.
- featTide heights expressed above LAT (chart datum), matching UK & Irish tide tables.
- featFeedback form with abuse rate-limiting.
- featAccessibility: theme and text-size settings.
- featChart cursor rule with snap-to-point hover for readable values.
No entries match this filter.