{"id":18739,"date":"2013-11-02T11:33:08","date_gmt":"2013-11-02T09:33:08","guid":{"rendered":"https:\/\/mamchenkov.net\/wordpress\/?p=18739"},"modified":"2013-11-02T11:33:08","modified_gmt":"2013-11-02T09:33:08","slug":"github-error-pages","status":"publish","type":"post","link":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/","title":{"rendered":"GitHub error pages"},"content":{"rendered":"<!-- google_ad_section_start -->\n<p>I&#8217;ve praised GitHub many a time in posts on this blog and in numerous conversations over a pint. \u00a0Today, I found yet another reason to do so &#8211; GitHub error pages. \u00a0We&#8217;ve all seen a <a href=\"https:\/\/github.com\/404\">parallax 404<\/a> by now, right?<\/p>\n<p><a href=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404.png?ssl=1\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"18740\" data-permalink=\"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/github-404\/\" data-orig-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404.png?fit=959%2C602&amp;ssl=1\" data-orig-size=\"959,602\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;}\" data-image-title=\"github 404\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404.png?fit=660%2C414&amp;ssl=1\" class=\"aligncenter size-medium wp-image-18740\" alt=\"github 404\" src=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404-500x313.png?resize=500%2C313&#038;ssl=1\" width=\"500\" height=\"313\" srcset=\"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404.png?resize=500%2C313&amp;ssl=1 500w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404.png?resize=510%2C320&amp;ssl=1 510w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404.png?resize=710%2C445&amp;ssl=1 710w, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404.png?w=959&amp;ssl=1 959w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><\/a><\/p>\n<p>Today was the first time I looked into the source code of the page. \u00a0It greets one with the following words right under the HTML 5 Doctype definition:<\/p>\n<blockquote><p>Hello future GitHubber! I bet you&#8217;re here to remove those nasty inline styles,<br \/>\nDRY up these templates and make &#8217;em nice and re-usable, right?<\/p>\n<p>Please, don&#8217;t. <a href=\"https:\/\/github.com\/styleguide\/templates\/2.0\">https:\/\/github.com\/styleguide\/templates\/2.0<\/a><\/p><\/blockquote>\n<p>The link provides even more goodness. \u00a0The list of other (all?) GitHub error templates is provided with explanation of which one fires when, as well as an insightful list of rules that GitHub uses for building error pages. \u00a0Have a look:<\/p>\n<blockquote><p>If you&#8217;re visiting from the internet, feel free to learn from our style. This is a guide we use for our own apps internally at GitHub. We encourage you to set up one that works for your own team.<\/p>\n<p>Error pages should be built such that they require zero scripting, zero javascript, and zero dependency on anything whatsoever. That means static HTML with inline CSS and base64-encoded images.<\/p>\n<p>The following are banned from every error page:<\/p>\n<ul>\n<li>All\u00a0<code>&lt;script&gt;<\/code>\u00a0tags with an\u00a0<code>src<\/code>\u00a0attribute.<\/li>\n<li>All JavaScript that loads external data.<\/li>\n<li>All\u00a0<code>&lt;link&gt;<\/code>\u00a0tags.<\/li>\n<li>All\u00a0<code>&lt;img&gt;<\/code>\u00a0tags with an\u00a0<code>src<\/code>\u00a0pointing to a URL.<\/li>\n<\/ul>\n<\/blockquote>\n<p>It&#8217;s things like that that keep me coming back and looking for more web development elegance all around GitHub.<\/p>\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<!-- google_ad_section_start -->\n<p>I&#8217;ve praised GitHub many a time in posts on this blog and in numerous conversations over a pint. \u00a0Today, I found yet another reason to do so &#8211; GitHub error pages. \u00a0We&#8217;ve all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. \u00a0It &hellip; <a href=\"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">GitHub error pages<\/span><\/a><\/p>\n<!-- google_ad_section_end -->\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false,"_links_to":"","_links_to_target":""},"categories":[1,18,62,1334],"tags":[2243,2809,1158,1330],"keyring_services":[],"class_list":["post-18739","post","type-post","status-publish","format-standard","hentry","category-general","category-programming","category-technology","category-web-work","tag-coding-style","tag-github","tag-user-interfaces","tag-web-development"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.9 - aioseo.com -->\n\t<meta name=\"description\" content=\"I&#039;ve praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We&#039;ve all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Leonid Mamchenkov\"\/>\n\t<meta name=\"google-site-verification\" content=\"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.9\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Leonid Mamchenkov - Life, universe, and everything else\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"GitHub error pages - Leonid Mamchenkov\" \/>\n\t\t<meta property=\"og:description\" content=\"I&#039;ve praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We&#039;ve all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t\t<meta property=\"og:image:height\" content=\"1024\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2013-11-02T09:33:08+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2013-11-02T09:33:08+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/MamchenkovBlog\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:site\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:title\" content=\"GitHub error pages - Leonid Mamchenkov\" \/>\n\t\t<meta name=\"twitter:description\" content=\"I&#039;ve praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We&#039;ve all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It\" \/>\n\t\t<meta name=\"twitter:creator\" content=\"@mamchenkov\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BlogPosting\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#blogposting\",\"name\":\"GitHub error pages - Leonid Mamchenkov\",\"headline\":\"GitHub error pages\",\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"},\"image\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/wp-content\\\/uploads\\\/2013\\\/11\\\/github-404-500x313.png\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#articleImage\"},\"datePublished\":\"2013-11-02T11:33:08+02:00\",\"dateModified\":\"2013-11-02T11:33:08+02:00\",\"inLanguage\":\"en-US\",\"commentCount\":4,\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#webpage\"},\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#webpage\"},\"articleSection\":\"All, Programming, Technology, Web work, coding style, GitHub, user interfaces, web development\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"position\":2,\"name\":\"Technology\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"position\":3,\"name\":\"Programming\",\"item\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#listItem\",\"name\":\"GitHub error pages\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/#listItem\",\"name\":\"Technology\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#listItem\",\"position\":4,\"name\":\"GitHub error pages\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/category\\\/technology\\\/programming\\\/#listItem\",\"name\":\"Programming\"}}]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#personImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/\",\"name\":\"Leonid Mamchenkov\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#authorImage\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g\",\"width\":96,\"height\":96,\"caption\":\"Leonid Mamchenkov\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#webpage\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/\",\"name\":\"GitHub error pages - Leonid Mamchenkov\",\"description\":\"I've praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We've all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/2013\\\/11\\\/02\\\/github-error-pages\\\/#breadcrumblist\"},\"author\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"creator\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/author\\\/leonid\\\/#author\"},\"datePublished\":\"2013-11-02T11:33:08+02:00\",\"dateModified\":\"2013-11-02T11:33:08+02:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/\",\"name\":\"Blog of Leonid Mamchenkov\",\"description\":\"Life, universe, and everything else\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/mamchenkov.net\\\/wordpress\\\/#person\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"GitHub error pages - Leonid Mamchenkov","description":"I've praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We've all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It","canonical_url":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"google-site-verification":"VHvdD0_usx1_4DzKy_QCVcICVgX2EgA2ybELT-wl7kQ","miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BlogPosting","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#blogposting","name":"GitHub error pages - Leonid Mamchenkov","headline":"GitHub error pages","author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"},"image":{"@type":"ImageObject","url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2013\/11\/github-404-500x313.png","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#articleImage"},"datePublished":"2013-11-02T11:33:08+02:00","dateModified":"2013-11-02T11:33:08+02:00","inLanguage":"en-US","commentCount":4,"mainEntityOfPage":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#webpage"},"isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#webpage"},"articleSection":"All, Programming, Technology, Web work, coding style, GitHub, user interfaces, web development"},{"@type":"BreadcrumbList","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","position":1,"name":"Home","item":"https:\/\/mamchenkov.net\/wordpress","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","position":2,"name":"Technology","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","position":3,"name":"Programming","item":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/","nextItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#listItem","name":"GitHub error pages"},"previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/#listItem","name":"Technology"}},{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#listItem","position":4,"name":"GitHub error pages","previousItem":{"@type":"ListItem","@id":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/#listItem","name":"Programming"}}]},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/#person","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#personImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"Person","@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author","url":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/","name":"Leonid Mamchenkov","image":{"@type":"ImageObject","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#authorImage","url":"https:\/\/secure.gravatar.com\/avatar\/3cf6df002a284d78fb6e9d8222ca4d102e0832035ed6bc8447008bd234e131a4?s=96&d=identicon&r=g","width":96,"height":96,"caption":"Leonid Mamchenkov"}},{"@type":"WebPage","@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#webpage","url":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/","name":"GitHub error pages - Leonid Mamchenkov","description":"I've praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We've all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#website"},"breadcrumb":{"@id":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/#breadcrumblist"},"author":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"creator":{"@id":"https:\/\/mamchenkov.net\/wordpress\/author\/leonid\/#author"},"datePublished":"2013-11-02T11:33:08+02:00","dateModified":"2013-11-02T11:33:08+02:00"},{"@type":"WebSite","@id":"https:\/\/mamchenkov.net\/wordpress\/#website","url":"https:\/\/mamchenkov.net\/wordpress\/","name":"Blog of Leonid Mamchenkov","description":"Life, universe, and everything else","inLanguage":"en-US","publisher":{"@id":"https:\/\/mamchenkov.net\/wordpress\/#person"}}]},"og:locale":"en_US","og:site_name":"Leonid Mamchenkov - Life, universe, and everything else","og:type":"article","og:title":"GitHub error pages - Leonid Mamchenkov","og:description":"I've praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We've all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It","og:url":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/","og:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:secure_url":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg","og:image:width":1024,"og:image:height":1024,"article:published_time":"2013-11-02T09:33:08+00:00","article:modified_time":"2013-11-02T09:33:08+00:00","article:publisher":"https:\/\/www.facebook.com\/MamchenkovBlog","twitter:card":"summary_large_image","twitter:site":"@mamchenkov","twitter:title":"GitHub error pages - Leonid Mamchenkov","twitter:description":"I've praised GitHub many a time in posts on this blog and in numerous conversations over a pint. Today, I found yet another reason to do so - GitHub error pages. We've all seen a parallax 404 by now, right? Today was the first time I looked into the source code of the page. It","twitter:creator":"@mamchenkov","twitter:image":"https:\/\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2026\/03\/leonid-sailing-beer.jpg"},"aioseo_meta_data":{"post_id":"18739","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"BlogPosting","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":null,"created":"2023-07-19 14:57:49","updated":"2026-01-15 09:45:17","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/\" title=\"Technology\">Technology<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/\" title=\"Programming\">Programming<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tGitHub error pages\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/mamchenkov.net\/wordpress"},{"label":"Technology","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/"},{"label":"Programming","link":"https:\/\/mamchenkov.net\/wordpress\/category\/technology\/programming\/"},{"label":"GitHub error pages","link":"https:\/\/mamchenkov.net\/wordpress\/2013\/11\/02\/github-error-pages\/"}],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack-related-posts":[{"id":25197,"url":"https:\/\/mamchenkov.net\/wordpress\/2016\/02\/23\/github-issue-and-pull-request-templates\/","url_meta":{"origin":18739,"position":0},"title":"GitHub : Issue and Pull Request templates","author":"Leonid Mamchenkov","date":"February 23, 2016","format":false,"excerpt":"GitHub is working hard on extending the functionality of their web service. \u00a0They've released a much needed feature recently - templates for new issues and pull requests. I like the elegant implementation - they basically just grab the ISSUE_TEMPLATE.md\u00a0and PULL_REQUEST_TEMPLATE.md files from the root of your project and stick them\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"templates","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2016\/02\/templates-500x303.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":28619,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/06\/10\/15-tips-to-enhance-your-github-flow\/","url_meta":{"origin":18739,"position":1},"title":"15 Tips to Enhance your Github Flow","author":"Leonid Mamchenkov","date":"June 10, 2018","format":false,"excerpt":"\"15 Tips to Enhance your Github Flow\" has lots and lots of good advice for anyone working with GitHub.\u00a0 Tips vary from PR templates all the way to automated dependency management and updates.\u00a0 Really useful!","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/06\/github-500x126.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":28538,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/05\/02\/code-quality-tools-in-php-to-check-and-improve-your-code\/","url_meta":{"origin":18739,"position":2},"title":"Code quality tools in PHP to check and improve your code","author":"Leonid Mamchenkov","date":"May 2, 2018","format":false,"excerpt":"\"Code quality tools in PHP to check and improve your code\" is a list of both some very well known tools and some new kids on the block.\u00a0 The article covers the following: PHP-CS-Fixer Documentation Github PHPCS Documentation Github PHPMD Documenation Official website PHPStan Github PHPUnit Documentation Github PHPLoc Github\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":22487,"url":"https:\/\/mamchenkov.net\/wordpress\/2014\/09\/03\/making-mysql-better-at-github\/","url_meta":{"origin":18739,"position":3},"title":"Making MySQL Better at GitHub","author":"Leonid Mamchenkov","date":"September 3, 2014","format":"link","excerpt":"Making MySQL Better at GitHub \u00a0 \u00a0","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"mysql improvements at GitHub","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2014\/09\/mysql-improvements-at-GitHub-500x240.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":27284,"url":"https:\/\/mamchenkov.net\/wordpress\/2017\/02\/01\/github-topics\/","url_meta":{"origin":18739,"position":4},"title":"GitHub Topics","author":"Leonid Mamchenkov","date":"February 1, 2017","format":false,"excerpt":"GitHub blog introduces Topics - a tagging\/labeling mechanism for GitHub repositories, which makes searching by technology, topic, etc so much better. This is a much welcome feature.","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2017\/02\/topics-500x263.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":29096,"url":"https:\/\/mamchenkov.net\/wordpress\/2018\/12\/14\/devhub-tweetdeck-for-github\/","url_meta":{"origin":18739,"position":5},"title":"DevHub: TweetDeck for GitHub","author":"Leonid Mamchenkov","date":"December 14, 2018","format":false,"excerpt":"If you are spending a lot of time on GitHub, following people, teams, and projects, then checkout DevHub - a TweetDeck-like application for GitHub that works on Android, iOS, and as a web application. It conveniently brings together your repositories, notifications, and all the other goodies, helping you to significantly\u2026","rel":"","context":"In &quot;All&quot;","block_context":{"text":"All","link":"https:\/\/mamchenkov.net\/wordpress\/category\/general\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/devhub.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/devhub.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/devhub.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/devhub.png?resize=700%2C400&ssl=1 2x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/devhub.png?resize=1050%2C600&ssl=1 3x, https:\/\/i0.wp.com\/mamchenkov.net\/wordpress\/wp-content\/uploads\/2018\/12\/devhub.png?resize=1400%2C800&ssl=1 4x"},"classes":[]}],"jetpack_sharing_enabled":true,"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/18739","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/comments?post=18739"}],"version-history":[{"count":0,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/posts\/18739\/revisions"}],"wp:attachment":[{"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/media?parent=18739"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/categories?post=18739"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/tags?post=18739"},{"taxonomy":"keyring_services","embeddable":true,"href":"https:\/\/mamchenkov.net\/wordpress\/wp-json\/wp\/v2\/keyring_services?post=18739"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}