{"action":"created","comment":{"url":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/comments/220276064","pull_request_review_id":158646949,"id":220276064,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIyMDI3NjA2NA==","diff_hunk":"@@ -0,0 +1,65 @@\n+---\n+title: How we improved Gatsby's accessibility in v2 by switching to @reach/router\n+date: 2018-09-24\n+author: Amberley Romo\n+tags: [\"routing\", \"v2\", \"accessibility\"]\n+---\n+\n+We recently announced the [second major release of Gatsby](/blog/2018-09-17-gatsby-v2/) 🚀. One change we want to highlight is the switch to using [@reach/router](https://reach.tech/router) to improve the accessibility of routing in Gatsby sites. What is @reach/router, and what are the benefits of undertaking the switch?\n+\n+## What is @reach/router?\n+\n+@reach/router is a routing library for React written and maintained by the founder of react-router, [Ryan Florence](https://twitter.com/ryanflorence). After [investigating the tradeoffs](https://github.com/gatsbyjs/gatsby/issues/5656), we made the leap to depending on @reach/router:\n+\n+- [Accessibility](https://reach.tech/router/accessibility) is a first-class concern\n+- Smaller bundle size (25% decrease, 8kb to 6kb gzipped)","path":"docs/blog/2018-09-24-reach-router/index.md","position":15,"original_position":15,"commit_id":"2291eac28d58edcb5111fe07a42dcc0b34ad1127","original_commit_id":"2291eac28d58edcb5111fe07a42dcc0b34ad1127","user":{"login":"DSchau","id":3924690,"node_id":"MDQ6VXNlcjM5MjQ2OTA=","avatar_url":"https://avatars2.githubusercontent.com/u/3924690?v=4","gravatar_id":"","url":"https://api.github.com/users/DSchau","html_url":"https://github.com/DSchau","followers_url":"https://api.github.com/users/DSchau/followers","following_url":"https://api.github.com/users/DSchau/following{/other_user}","gists_url":"https://api.github.com/users/DSchau/gists{/gist_id}","starred_url":"https://api.github.com/users/DSchau/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DSchau/subscriptions","organizations_url":"https://api.github.com/users/DSchau/orgs","repos_url":"https://api.github.com/users/DSchau/repos","events_url":"https://api.github.com/users/DSchau/events{/privacy}","received_events_url":"https://api.github.com/users/DSchau/received_events","type":"User","site_admin":false},"body":"It's reasonable 🤷‍♂️ Technically we're doubling up on a few as @stefanprobst noted.","created_at":"2018-09-25T17:05:01Z","updated_at":"2018-09-25T17:05:02Z","html_url":"https://github.com/gatsbyjs/gatsby/pull/8508#discussion_r220276064","pull_request_url":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/comments/220276064"},"html":{"href":"https://github.com/gatsbyjs/gatsby/pull/8508#discussion_r220276064"},"pull_request":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508"}},"in_reply_to_id":220004150},"pull_request":{"url":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508","id":217778970,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE3Nzc4OTcw","html_url":"https://github.com/gatsbyjs/gatsby/pull/8508","diff_url":"https://github.com/gatsbyjs/gatsby/pull/8508.diff","patch_url":"https://github.com/gatsbyjs/gatsby/pull/8508.patch","issue_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/8508","number":8508,"state":"open","locked":false,"title":"Add blog post on v2 routing","user":{"login":"amberleyromo","id":3461087,"node_id":"MDQ6VXNlcjM0NjEwODc=","avatar_url":"https://avatars1.githubusercontent.com/u/3461087?v=4","gravatar_id":"","url":"https://api.github.com/users/amberleyromo","html_url":"https://github.com/amberleyromo","followers_url":"https://api.github.com/users/amberleyromo/followers","following_url":"https://api.github.com/users/amberleyromo/following{/other_user}","gists_url":"https://api.github.com/users/amberleyromo/gists{/gist_id}","starred_url":"https://api.github.com/users/amberleyromo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amberleyromo/subscriptions","organizations_url":"https://api.github.com/users/amberleyromo/orgs","repos_url":"https://api.github.com/users/amberleyromo/repos","events_url":"https://api.github.com/users/amberleyromo/events{/privacy}","received_events_url":"https://api.github.com/users/amberleyromo/received_events","type":"User","site_admin":false},"body":"Add blog post draft","created_at":"2018-09-24T20:31:09Z","updated_at":"2018-09-25T17:05:02Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a6605519a6846a09caab12dbf73b20a72f1373cf","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508/commits","review_comments_url":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508/comments","review_comment_url":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/comments{/number}","comments_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/8508/comments","statuses_url":"https://api.github.com/repos/gatsbyjs/gatsby/statuses/2291eac28d58edcb5111fe07a42dcc0b34ad1127","head":{"label":"amberleyromo:blog-v2-reach-router","ref":"blog-v2-reach-router","sha":"2291eac28d58edcb5111fe07a42dcc0b34ad1127","user":{"login":"amberleyromo","id":3461087,"node_id":"MDQ6VXNlcjM0NjEwODc=","avatar_url":"https://avatars1.githubusercontent.com/u/3461087?v=4","gravatar_id":"","url":"https://api.github.com/users/amberleyromo","html_url":"https://github.com/amberleyromo","followers_url":"https://api.github.com/users/amberleyromo/followers","following_url":"https://api.github.com/users/amberleyromo/following{/other_user}","gists_url":"https://api.github.com/users/amberleyromo/gists{/gist_id}","starred_url":"https://api.github.com/users/amberleyromo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amberleyromo/subscriptions","organizations_url":"https://api.github.com/users/amberleyromo/orgs","repos_url":"https://api.github.com/users/amberleyromo/repos","events_url":"https://api.github.com/users/amberleyromo/events{/privacy}","received_events_url":"https://api.github.com/users/amberleyromo/received_events","type":"User","site_admin":false},"repo":{"id":118253524,"node_id":"MDEwOlJlcG9zaXRvcnkxMTgyNTM1MjQ=","name":"gatsby","full_name":"amberleyromo/gatsby","private":false,"owner":{"login":"amberleyromo","id":3461087,"node_id":"MDQ6VXNlcjM0NjEwODc=","avatar_url":"https://avatars1.githubusercontent.com/u/3461087?v=4","gravatar_id":"","url":"https://api.github.com/users/amberleyromo","html_url":"https://github.com/amberleyromo","followers_url":"https://api.github.com/users/amberleyromo/followers","following_url":"https://api.github.com/users/amberleyromo/following{/other_user}","gists_url":"https://api.github.com/users/amberleyromo/gists{/gist_id}","starred_url":"https://api.github.com/users/amberleyromo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amberleyromo/subscriptions","organizations_url":"https://api.github.com/users/amberleyromo/orgs","repos_url":"https://api.github.com/users/amberleyromo/repos","events_url":"https://api.github.com/users/amberleyromo/events{/privacy}","received_events_url":"https://api.github.com/users/amberleyromo/received_events","type":"User","site_admin":false},"html_url":"https://github.com/amberleyromo/gatsby","description":"⚛️📄🚀 Blazing fast static site generator for React","fork":true,"url":"https://api.github.com/repos/amberleyromo/gatsby","forks_url":"https://api.github.com/repos/amberleyromo/gatsby/forks","keys_url":"https://api.github.com/repos/amberleyromo/gatsby/keys{/key_id}","collaborators_url":"https://api.github.com/repos/amberleyromo/gatsby/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/amberleyromo/gatsby/teams","hooks_url":"https://api.github.com/repos/amberleyromo/gatsby/hooks","issue_events_url":"https://api.github.com/repos/amberleyromo/gatsby/issues/events{/number}","events_url":"https://api.github.com/repos/amberleyromo/gatsby/events","assignees_url":"https://api.github.com/repos/amberleyromo/gatsby/assignees{/user}","branches_url":"https://api.github.com/repos/amberleyromo/gatsby/branches{/branch}","tags_url":"https://api.github.com/repos/amberleyromo/gatsby/tags","blobs_url":"https://api.github.com/repos/amberleyromo/gatsby/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/amberleyromo/gatsby/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/amberleyromo/gatsby/git/refs{/sha}","trees_url":"https://api.github.com/repos/amberleyromo/gatsby/git/trees{/sha}","statuses_url":"https://api.github.com/repos/amberleyromo/gatsby/statuses/{sha}","languages_url":"https://api.github.com/repos/amberleyromo/gatsby/languages","stargazers_url":"https://api.github.com/repos/amberleyromo/gatsby/stargazers","contributors_url":"https://api.github.com/repos/amberleyromo/gatsby/contributors","subscribers_url":"https://api.github.com/repos/amberleyromo/gatsby/subscribers","subscription_url":"https://api.github.com/repos/amberleyromo/gatsby/subscription","commits_url":"https://api.github.com/repos/amberleyromo/gatsby/commits{/sha}","git_commits_url":"https://api.github.com/repos/amberleyromo/gatsby/git/commits{/sha}","comments_url":"https://api.github.com/repos/amberleyromo/gatsby/comments{/number}","issue_comment_url":"https://api.github.com/repos/amberleyromo/gatsby/issues/comments{/number}","contents_url":"https://api.github.com/repos/amberleyromo/gatsby/contents/{+path}","compare_url":"https://api.github.com/repos/amberleyromo/gatsby/compare/{base}...{head}","merges_url":"https://api.github.com/repos/amberleyromo/gatsby/merges","archive_url":"https://api.github.com/repos/amberleyromo/gatsby/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/amberleyromo/gatsby/downloads","issues_url":"https://api.github.com/repos/amberleyromo/gatsby/issues{/number}","pulls_url":"https://api.github.com/repos/amberleyromo/gatsby/pulls{/number}","milestones_url":"https://api.github.com/repos/amberleyromo/gatsby/milestones{/number}","notifications_url":"https://api.github.com/repos/amberleyromo/gatsby/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/amberleyromo/gatsby/labels{/name}","releases_url":"https://api.github.com/repos/amberleyromo/gatsby/releases{/id}","deployments_url":"https://api.github.com/repos/amberleyromo/gatsby/deployments","created_at":"2018-01-20T15:10:39Z","updated_at":"2018-09-19T22:02:55Z","pushed_at":"2018-09-24T21:23:38Z","git_url":"git://github.com/amberleyromo/gatsby.git","ssh_url":"git@github.com:amberleyromo/gatsby.git","clone_url":"https://github.com/amberleyromo/gatsby.git","svn_url":"https://github.com/amberleyromo/gatsby","homepage":"https://www.gatsbyjs.org","size":428369,"stargazers_count":0,"watchers_count":0,"language":"JavaScript","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":1,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"gatsbyjs:master","ref":"master","sha":"e1beefc6fd90c71f16d7ef295c48d2de840782d5","user":{"login":"gatsbyjs","id":12551863,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyNTUxODYz","avatar_url":"https://avatars1.githubusercontent.com/u/12551863?v=4","gravatar_id":"","url":"https://api.github.com/users/gatsbyjs","html_url":"https://github.com/gatsbyjs","followers_url":"https://api.github.com/users/gatsbyjs/followers","following_url":"https://api.github.com/users/gatsbyjs/following{/other_user}","gists_url":"https://api.github.com/users/gatsbyjs/gists{/gist_id}","starred_url":"https://api.github.com/users/gatsbyjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gatsbyjs/subscriptions","organizations_url":"https://api.github.com/users/gatsbyjs/orgs","repos_url":"https://api.github.com/users/gatsbyjs/repos","events_url":"https://api.github.com/users/gatsbyjs/events{/privacy}","received_events_url":"https://api.github.com/users/gatsbyjs/received_events","type":"Organization","site_admin":false},"repo":{"id":36040894,"node_id":"MDEwOlJlcG9zaXRvcnkzNjA0MDg5NA==","name":"gatsby","full_name":"gatsbyjs/gatsby","private":false,"owner":{"login":"gatsbyjs","id":12551863,"node_id":"MDEyOk9yZ2FuaXphdGlvbjEyNTUxODYz","avatar_url":"https://avatars1.githubusercontent.com/u/12551863?v=4","gravatar_id":"","url":"https://api.github.com/users/gatsbyjs","html_url":"https://github.com/gatsbyjs","followers_url":"https://api.github.com/users/gatsbyjs/followers","following_url":"https://api.github.com/users/gatsbyjs/following{/other_user}","gists_url":"https://api.github.com/users/gatsbyjs/gists{/gist_id}","starred_url":"https://api.github.com/users/gatsbyjs/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gatsbyjs/subscriptions","organizations_url":"https://api.github.com/users/gatsbyjs/orgs","repos_url":"https://api.github.com/users/gatsbyjs/repos","events_url":"https://api.github.com/users/gatsbyjs/events{/privacy}","received_events_url":"https://api.github.com/users/gatsbyjs/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/gatsbyjs/gatsby","description":"Build blazing fast, modern apps and websites with React","fork":false,"url":"https://api.github.com/repos/gatsbyjs/gatsby","forks_url":"https://api.github.com/repos/gatsbyjs/gatsby/forks","keys_url":"https://api.github.com/repos/gatsbyjs/gatsby/keys{/key_id}","collaborators_url":"https://api.github.com/repos/gatsbyjs/gatsby/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/gatsbyjs/gatsby/teams","hooks_url":"https://api.github.com/repos/gatsbyjs/gatsby/hooks","issue_events_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/events{/number}","events_url":"https://api.github.com/repos/gatsbyjs/gatsby/events","assignees_url":"https://api.github.com/repos/gatsbyjs/gatsby/assignees{/user}","branches_url":"https://api.github.com/repos/gatsbyjs/gatsby/branches{/branch}","tags_url":"https://api.github.com/repos/gatsbyjs/gatsby/tags","blobs_url":"https://api.github.com/repos/gatsbyjs/gatsby/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/gatsbyjs/gatsby/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/gatsbyjs/gatsby/git/refs{/sha}","trees_url":"https://api.github.com/repos/gatsbyjs/gatsby/git/trees{/sha}","statuses_url":"https://api.github.com/repos/gatsbyjs/gatsby/statuses/{sha}","languages_url":"https://api.github.com/repos/gatsbyjs/gatsby/languages","stargazers_url":"https://api.github.com/repos/gatsbyjs/gatsby/stargazers","contributors_url":"https://api.github.com/repos/gatsbyjs/gatsby/contributors","subscribers_url":"https://api.github.com/repos/gatsbyjs/gatsby/subscribers","subscription_url":"https://api.github.com/repos/gatsbyjs/gatsby/subscription","commits_url":"https://api.github.com/repos/gatsbyjs/gatsby/commits{/sha}","git_commits_url":"https://api.github.com/repos/gatsbyjs/gatsby/git/commits{/sha}","comments_url":"https://api.github.com/repos/gatsbyjs/gatsby/comments{/number}","issue_comment_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/comments{/number}","contents_url":"https://api.github.com/repos/gatsbyjs/gatsby/contents/{+path}","compare_url":"https://api.github.com/repos/gatsbyjs/gatsby/compare/{base}...{head}","merges_url":"https://api.github.com/repos/gatsbyjs/gatsby/merges","archive_url":"https://api.github.com/repos/gatsbyjs/gatsby/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/gatsbyjs/gatsby/downloads","issues_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues{/number}","pulls_url":"https://api.github.com/repos/gatsbyjs/gatsby/pulls{/number}","milestones_url":"https://api.github.com/repos/gatsbyjs/gatsby/milestones{/number}","notifications_url":"https://api.github.com/repos/gatsbyjs/gatsby/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/gatsbyjs/gatsby/labels{/name}","releases_url":"https://api.github.com/repos/gatsbyjs/gatsby/releases{/id}","deployments_url":"https://api.github.com/repos/gatsbyjs/gatsby/deployments","created_at":"2015-05-21T22:43:05Z","updated_at":"2018-09-25T16:54:17Z","pushed_at":"2018-09-25T16:59:04Z","git_url":"git://github.com/gatsbyjs/gatsby.git","ssh_url":"git@github.com:gatsbyjs/gatsby.git","clone_url":"https://github.com/gatsbyjs/gatsby.git","svn_url":"https://github.com/gatsbyjs/gatsby","homepage":"https://www.gatsbyjs.org","size":428325,"stargazers_count":25942,"watchers_count":25942,"language":"JavaScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":2952,"mirror_url":null,"archived":false,"open_issues_count":685,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":2952,"open_issues":685,"watchers":25942,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508"},"html":{"href":"https://github.com/gatsbyjs/gatsby/pull/8508"},"issue":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/issues/8508"},"comments":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/issues/8508/comments"},"review_comments":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508/comments"},"review_comment":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/pulls/8508/commits"},"statuses":{"href":"https://api.github.com/repos/gatsbyjs/gatsby/statuses/2291eac28d58edcb5111fe07a42dcc0b34ad1127"}},"author_association":"MEMBER"}}
{"actor":{"display_login":"DSchau"}}