Websites
90-day history · uptime is measured from the host, so it excludes internet-side outages
ATLAS
Landing hub · tough.services
975 ms TLS 36 d Operational
90 days ago
99.14% last 30 d · 99.14% last 90 d
Today
GUST
Live weather station · weather.tough.services
975 ms TLS 55 d Operational
90 days ago
99.25% last 30 d · 99.25% last 90 d
Today
ORBIT
Satellite ground station · weathersat.tough.services
975 ms TLS 38 d Operational
90 days ago
99.20% last 30 d · 99.20% last 90 d
Today
RADAR
Aircraft tracking · adsb.tough.services
1107 ms TLS 36 d Operational
90 days ago
99.14% last 30 d · 99.14% last 90 d
Today
SAGE
AI runtime front-end · sage.tough.services
975 ms TLS 47 d Operational
90 days ago
99.20% last 30 d · 99.20% last 90 d
Today
VAULT
Source code hosting (Forgejo) · git.tough.services
975 ms TLS 87 d Operational
90 days ago
99.13% last 30 d · 99.13% last 90 d
Today
TIDE
St Peter Port tide times · tides.tough.services
975 ms TLS 87 d Operational
90 days ago
98.85% last 30 d · 98.85% last 90 d
Today
NOVA
Satellite passes, aurora, meteors · sky.tough.services
990 ms TLS 87 d Operational
90 days ago
98.88% last 30 d · 98.88% last 90 d
Today
ALERT
Push alerts (ntfy) · ntfy.tough.services
975 ms TLS 87 d Operational
90 days ago
99.04% last 30 d · 99.04% last 90 d
Today
CODEX
Runbooks & reference · docs.tough.services
1938 ms TLS 87 d Operational
90 days ago
99.00% last 30 d · 99.00% last 90 d
Today
DASH
Browser speed test · speed.tough.services
1939 ms TLS 87 d Operational
90 days ago
98.91% last 30 d · 98.91% last 90 d
Today
NEXUS
Network toolbox · net.tough.services
2961 ms TLS 87 d Operational
90 days ago
98.83% last 30 d · 98.83% last 90 d
Today
BRIEF
Personal dashboard · today.tough.services
2975 ms TLS 87 d Operational
90 days ago
97.81% last 30 d · 97.81% last 90 d
Today
FORGE
Website builder & billing · studio.tough.services
73 ms TLS 88 d Operational
90 days ago
98.82% last 30 d · 98.82% last 90 d
Today
PATCH
Guernsey roadworks map · roadworks.tough.services
974 ms TLS 88 d Operational
90 days ago
98.64% last 30 d · 98.64% last 90 d
Today
SCALE
Guernsey inflation tracker · prices.tough.services
2963 ms TLS 89 d Operational
90 days ago
81.80% last 30 d · 81.80% last 90 d
Today
AGENDA
States Assembly tracker · states.tough.services
974 ms TLS 89 d Operational
90 days ago
83.21% last 30 d · 83.21% last 90 d
Today
SHORE
Beach & bathing water conditions · beaches.tough.services
2962 ms TLS 89 d Operational
90 days ago
82.93% last 30 d · 82.93% last 90 d
Today
CHART
Estate traffic analytics · chart.tough.services
4003 ms TLS 89 d Operational
90 days ago
83.30% last 30 d · 83.30% last 90 d
Today
DROP
File & snippet sharing · drop.tough.services
4002 ms TLS 89 d Operational
90 days ago
84.06% last 30 d · 84.06% last 90 d
Today
LOOP
Wall-display dashboard · loop.tough.services
3990 ms TLS 89 d Operational
90 days ago
85.09% last 30 d · 85.09% last 90 d
Today
WINGS
Guernsey Airport live board · flights.tough.services
3990 ms TLS 89 d Operational
90 days ago
59.94% last 30 d · 59.94% last 90 d
Today
HOP
Short links · go.tough.services
3990 ms TLS 89 d Operational
90 days ago
60.45% last 30 d · 60.45% last 90 d
Today
PLANS
Planning applications map · plans.tough.services
3990 ms TLS 89 d Operational
90 days ago
60.86% last 30 d · 60.86% last 90 d
Today
STORM
Weather warnings & radar · storm.tough.services
3990 ms TLS 89 d Operational
90 days ago
60.57% last 30 d · 60.57% last 90 d
Today
ROUTE
Live buses & timetables · buses.tough.services
3991 ms TLS 89 d Operational
90 days ago
92.97% last 30 d · 92.97% last 90 d
Today
FERRY
Condor sailings & reliability · ferry.tough.services
95 ms TLS 89 d Operational
90 days ago
96.07% last 30 d · 96.07% last 90 d
Today
PULSE
This page · status.tough.services
702 ms TLS 87 d Operational
90 days ago
99.27% last 30 d · 99.27% last 90 d
Today
Data feeds & receivers
live sources behind the sitesWeather station
Last observation 50 s ago · 17.3 °C · wind 5 mph
Weather-satellite receiver
Receiver hardware offline — passes still scheduled, next pass METEOR-M2 4 at 04:51 (69° max)
ADS-B receiver
Receiver hardware offline — live map and archive paused
SAGE runtime
Healthy · model provider ok · database ok
Internet uplink
70 ms to 1.1.1.1 · DNS resolving
Wednesday 2 September 2026
SAGE runtime healthy again 01:02
SAGE health API reports Healthy.
SAGE runtime degraded 00:57
SAGE health API reports: degraded.
Tuesday 1 September 2026
SAGE runtime healthy again 23:57
SAGE health API reports Healthy.
SAGE runtime degraded 23:17
SAGE health API reports: degraded.
Site recovered: ferry.tough.services 22:56
ferry.tough.services is serving again (HTTP 200).
Site recovered: buses.tough.services 22:55
buses.tough.services is serving again (HTTP 200).
SAGE runtime healthy again 22:47
SAGE health API reports Healthy.
SAGE runtime degraded 22:32
SAGE health API reports: degraded.
Site DOWN: docs.tough.services 22:18
docs.tough.services returned no response.
Site recovered: storm.tough.services 22:17
storm.tough.services is serving again (HTTP 200).
Site recovered: plans.tough.services 22:16
plans.tough.services is serving again (HTTP 200).
Site recovered: go.tough.services 22:16
go.tough.services is serving again (HTTP 200).
Site recovered: flights.tough.services 22:16
flights.tough.services is serving again (HTTP 200).
SAGE runtime healthy again 22:12
SAGE health API reports Healthy.
SAGE runtime degraded 21:47
SAGE health API reports: degraded.
SAGE runtime healthy again 21:37
SAGE health API reports Healthy.
SAGE runtime degraded 21:27
SAGE health API reports: degraded.
SAGE runtime healthy again 21:17
SAGE health API reports Healthy.
SAGE runtime degraded 20:57
SAGE health API reports: degraded.
Site recovered: studio.tough.services 20:06
studio.tough.services is serving again (HTTP 302).
Site DOWN: studio.tough.services 20:04
studio.tough.services returned no response.
Site recovered: drop.tough.services 19:37
drop.tough.services is serving again (HTTP 200).
Site recovered: chart.tough.services 19:37
chart.tough.services is serving again (HTTP 200).
Site recovered: tough.services 19:37
tough.services is serving again (HTTP 200).
Site recovered: sage.tough.services 19:36
sage.tough.services is serving again (HTTP 302).
Site recovered: adsb.tough.services 19:36
adsb.tough.services is serving again (HTTP 200).
Site recovered: weathersat.tough.services 19:36
weathersat.tough.services is serving again (HTTP 200).
Site recovered: weather.tough.services 19:36
weather.tough.services is serving again (HTTP 200).
Site recovered: sage.tough.services 19:36
sage.tough.services is serving again (HTTP 302).
Site recovered: adsb.tough.services 19:36
adsb.tough.services is serving again (HTTP 200).
Site recovered: weathersat.tough.services 19:36
weathersat.tough.services is serving again (HTTP 200).
Site recovered: weather.tough.services 19:36
weather.tough.services is serving again (HTTP 200).
Site recovered: loop.tough.services 19:35
loop.tough.services is serving again (HTTP 200).
Site DOWN: sage.tough.services 19:35
sage.tough.services returned no response.
Site DOWN: adsb.tough.services 19:35
adsb.tough.services returned no response.
Site DOWN: weathersat.tough.services 19:35
weathersat.tough.services returned no response.
Site DOWN: weather.tough.services 19:35
weather.tough.services returned no response.
Site DOWN: tough.services 19:35
tough.services returned no response.
Site recovered: beaches.tough.services 18:23
beaches.tough.services is serving again (HTTP 200).
Site recovered: prices.tough.services 18:23
prices.tough.services is serving again (HTTP 200).
Site recovered: net.tough.services 18:23
net.tough.services is serving again (HTTP 200).
Site recovered: tough.services 18:23
tough.services is serving again (HTTP 200).
Site recovered: today.tough.services 18:22
today.tough.services is serving again (HTTP 200).
Site recovered: speed.tough.services 18:22
speed.tough.services is serving again (HTTP 200).
Site recovered: docs.tough.services 18:22
docs.tough.services is serving again (HTTP 200).
Site recovered: states.tough.services 18:21
states.tough.services is serving again (HTTP 200).
Site DOWN: net.tough.services 18:21
net.tough.services returned no response.
Site DOWN: tough.services 18:21
tough.services returned no response.
Site DOWN: today.tough.services 18:20
today.tough.services returned no response.
Site DOWN: speed.tough.services 18:20
speed.tough.services returned no response.
Site DOWN: docs.tough.services 18:20
docs.tough.services returned no response.
SAGE runtime healthy again 11:30
SAGE health API reports Healthy.
SAGE runtime degraded 10:59
SAGE health API reports: degraded.
SAGE runtime healthy again 10:54
SAGE health API reports Healthy.
SAGE runtime degraded 10:48
SAGE health API reports: degraded.
SAGE runtime healthy again 10:43
SAGE health API reports Healthy.
SAGE runtime degraded 10:40
SAGE health API reports: degraded.
SAGE runtime healthy again 10:25
SAGE health API reports Healthy.
SAGE runtime degraded 10:20
SAGE health API reports: degraded.
SAGE runtime healthy again 08:06
SAGE health API reports Healthy.
SAGE runtime degraded 07:33
SAGE health API reports: degraded.
SAGE runtime healthy again 01:16
SAGE health API reports Healthy.
SAGE runtime degraded 00:55
SAGE health API reports: degraded.
Site recovered: roadworks.tough.services 00:03
roadworks.tough.services is serving again (HTTP 200).
Site recovered: studio.tough.services 00:03
studio.tough.services is serving again (HTTP 302).
Site recovered: today.tough.services 00:03
today.tough.services is serving again (HTTP 200).
Site DOWN: roadworks.tough.services 00:01
roadworks.tough.services returned no response.
Site DOWN: studio.tough.services 00:01
studio.tough.services returned no response.
Site DOWN: today.tough.services 00:01
today.tough.services returned no response.
Monday 31 August 2026
Site recovered: roadworks.tough.services 23:20
roadworks.tough.services is serving again (HTTP 200).
Site recovered: sky.tough.services 12:54
sky.tough.services is serving again (HTTP 200).
Site DOWN: sky.tough.services 12:52
sky.tough.services returned no response.
Site recovered: net.tough.services 10:46
net.tough.services is serving again (HTTP 200).
Site recovered: speed.tough.services 10:46
speed.tough.services is serving again (HTTP 200).
Site recovered: docs.tough.services 10:46
docs.tough.services is serving again (HTTP 200).
Site recovered: ntfy.tough.services 10:46
ntfy.tough.services is serving again (HTTP 200).
Site DOWN: net.tough.services 10:44
net.tough.services returned no response.
Site DOWN: speed.tough.services 10:44
speed.tough.services returned no response.
Site DOWN: docs.tough.services 10:44
docs.tough.services returned no response.
Site DOWN: ntfy.tough.services 10:44
ntfy.tough.services returned no response.
Site recovered: today.tough.services 10:15
today.tough.services is serving again (HTTP 200).
Site DOWN: today.tough.services 10:13
today.tough.services returned no response.
Site recovered: today.tough.services 08:43
today.tough.services is serving again (HTTP 200).
Site DOWN: today.tough.services 08:41
today.tough.services returned no response.
Site recovered: weather.tough.services 00:03
weather.tough.services is serving again (HTTP 200).
Site DOWN: weather.tough.services 00:01
weather.tough.services returned no response.
Sunday 30 August 2026
Site recovered: net.tough.services 19:19
net.tough.services is serving again (HTTP 200).
Site DOWN: net.tough.services 19:17
net.tough.services returned no response.
Site recovered: speed.tough.services 18:10
speed.tough.services is serving again (HTTP 200).
Site DOWN: speed.tough.services 18:08
speed.tough.services returned no response.