Resilience
Graceful failure — error pages, offline, redirects.
6 topics in this category.
Custom error pages (404, 500)
RequiredCustom error pages must return the correct HTTP status code, explain what went wrong in plain language, and offer the user a way forward without leaking implementation details.
Maintenance pages and 503
RecommendedWhen the site is intentionally offline, return HTTP 503 with a Retry-After header and a page that tells users what is happening and when to come back.
Graceful degradation when JavaScript fails
RecommendedCore content and primary navigation should keep working when JavaScript fails to load or throws — treat client-side scripts as an enhancement, not the delivery mechanism.
Offline support and service workers
OptionalA service worker can serve a cached offline fallback page when the network fails, keeping the site usable on flaky connections and turning hard failures into graceful ones.
Web app manifest
RecommendedA web app manifest is a small JSON file that tells browsers how the site should appear when installed — its name, icons, start URL, theme colour, and display mode.
Monitoring and uptime
RecommendedMonitor the site from outside your own infrastructure, combine synthetic checks with real user data, and run a status page on a separate host so it stays up when the site does not.