{"action":"created","issue":{"url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/5656","repository_url":"https://api.github.com/repos/gatsbyjs/gatsby","labels_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/5656/labels{/name}","comments_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/5656/comments","events_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/5656/events","html_url":"https://github.com/gatsbyjs/gatsby/issues/5656","id":328418069,"node_id":"MDU6SXNzdWUzMjg0MTgwNjk=","number":5656,"title":"Investigate using Reach Router","user":{"login":"m-allanson","id":381801,"node_id":"MDQ6VXNlcjM4MTgwMQ==","avatar_url":"https://avatars1.githubusercontent.com/u/381801?v=4","gravatar_id":"","url":"https://api.github.com/users/m-allanson","html_url":"https://github.com/m-allanson","followers_url":"https://api.github.com/users/m-allanson/followers","following_url":"https://api.github.com/users/m-allanson/following{/other_user}","gists_url":"https://api.github.com/users/m-allanson/gists{/gist_id}","starred_url":"https://api.github.com/users/m-allanson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/m-allanson/subscriptions","organizations_url":"https://api.github.com/users/m-allanson/orgs","repos_url":"https://api.github.com/users/m-allanson/repos","events_url":"https://api.github.com/users/m-allanson/events{/privacy}","received_events_url":"https://api.github.com/users/m-allanson/received_events","type":"User","site_admin":false},"labels":[{"id":779050110,"node_id":"MDU6TGFiZWw3NzkwNTAxMTA=","url":"https://api.github.com/repos/gatsbyjs/gatsby/labels/%F0%9F%8F%B7%20type:%20feature","name":"🏷 type: feature","color":"c5def5","default":false},{"id":214544675,"node_id":"MDU6TGFiZWwyMTQ1NDQ2NzU=","url":"https://api.github.com/repos/gatsbyjs/gatsby/labels/%F0%9F%93%8D%20status:%20help%20wanted","name":"📍 status: help wanted","color":"0e8a16","default":false}],"state":"closed","locked":false,"assignee":{"login":"KyleAMathews","id":71047,"node_id":"MDQ6VXNlcjcxMDQ3","avatar_url":"https://avatars3.githubusercontent.com/u/71047?v=4","gravatar_id":"","url":"https://api.github.com/users/KyleAMathews","html_url":"https://github.com/KyleAMathews","followers_url":"https://api.github.com/users/KyleAMathews/followers","following_url":"https://api.github.com/users/KyleAMathews/following{/other_user}","gists_url":"https://api.github.com/users/KyleAMathews/gists{/gist_id}","starred_url":"https://api.github.com/users/KyleAMathews/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KyleAMathews/subscriptions","organizations_url":"https://api.github.com/users/KyleAMathews/orgs","repos_url":"https://api.github.com/users/KyleAMathews/repos","events_url":"https://api.github.com/users/KyleAMathews/events{/privacy}","received_events_url":"https://api.github.com/users/KyleAMathews/received_events","type":"User","site_admin":false},"assignees":[{"login":"KyleAMathews","id":71047,"node_id":"MDQ6VXNlcjcxMDQ3","avatar_url":"https://avatars3.githubusercontent.com/u/71047?v=4","gravatar_id":"","url":"https://api.github.com/users/KyleAMathews","html_url":"https://github.com/KyleAMathews","followers_url":"https://api.github.com/users/KyleAMathews/followers","following_url":"https://api.github.com/users/KyleAMathews/following{/other_user}","gists_url":"https://api.github.com/users/KyleAMathews/gists{/gist_id}","starred_url":"https://api.github.com/users/KyleAMathews/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KyleAMathews/subscriptions","organizations_url":"https://api.github.com/users/KyleAMathews/orgs","repos_url":"https://api.github.com/users/KyleAMathews/repos","events_url":"https://api.github.com/users/KyleAMathews/events{/privacy}","received_events_url":"https://api.github.com/users/KyleAMathews/received_events","type":"User","site_admin":false}],"milestone":null,"comments":9,"created_at":"2018-06-01T07:57:46Z","updated_at":"2018-08-09T13:45:16Z","closed_at":"2018-08-06T11:24:07Z","author_association":"CONTRIBUTOR","body":"<!--\r\n  To make it easier for us to help you — please follow the suggested format below.\r\n\r\n  Useful Links:\r\n  - Gatsby RFCs: https://github.com/gatsbyjs/rfcs\r\n  - How to Contribute: https://www.gatsbyjs.org/docs/how-to-contribute/\r\n  - How to File an Issue: https://www.gatsbyjs.org/docs/how-to-file-an-issue/\r\n\r\n  Before opening a new issue, please search existing issues https://github.com/gatsbyjs/gatsby/issues\r\n-->\r\n\r\n## Summary\r\n\r\nGatsby uses React Router under the hood. Reach Router is a new DOM-based router for React with accessibility built in. Influenced by React Router and built by Ryan Florence: https://reach.tech/router/accessibility\r\n\r\nInvestigate the tradeoffs involved in swapping out React Router for Reach Router.\r\n\r\n### Motivation\r\n\r\nAdding 'accessiblity by default' is a win for developers and site visitors. As a bonus it looks like Reach Router has a smaller bundle size compared to React Router.\r\n"},"comment":{"url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/comments/411762437","html_url":"https://github.com/gatsbyjs/gatsby/issues/5656#issuecomment-411762437","issue_url":"https://api.github.com/repos/gatsbyjs/gatsby/issues/5656","id":411762437,"node_id":"MDEyOklzc3VlQ29tbWVudDQxMTc2MjQzNw==","user":{"login":"fabe","id":5220692,"node_id":"MDQ6VXNlcjUyMjA2OTI=","avatar_url":"https://avatars0.githubusercontent.com/u/5220692?v=4","gravatar_id":"","url":"https://api.github.com/users/fabe","html_url":"https://github.com/fabe","followers_url":"https://api.github.com/users/fabe/followers","following_url":"https://api.github.com/users/fabe/following{/other_user}","gists_url":"https://api.github.com/users/fabe/gists{/gist_id}","starred_url":"https://api.github.com/users/fabe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fabe/subscriptions","organizations_url":"https://api.github.com/users/fabe/orgs","repos_url":"https://api.github.com/users/fabe/repos","events_url":"https://api.github.com/users/fabe/events{/privacy}","received_events_url":"https://api.github.com/users/fabe/received_events","type":"User","site_admin":false},"created_at":"2018-08-09T13:45:16Z","updated_at":"2018-08-09T13:45:16Z","author_association":"MEMBER","body":"@DylanVann @KyleAMathews @ryanflorence I've been trying to implement component-specific page transitions the past couple days and wasn't able to get it working with Reach Router. Adding a `TransitionGroup` around the component renderer [works fine](https://gist.github.com/fabe/f24edbdaeed0473cfab6294c291b79c3) and I'm able to fade-in/out from page to page, but I'm more after something like [this](https://5b646e96e39e7c19f4709dee--gatsby-universal.netlify.com). To get it working in `react-router` before, we were using `getUserConfirmation` together with a `setTimeout`, taken from the official example:\r\n\r\n###### gatsby-browser.js at [examples/using-page-transitions](https://github.com/gatsbyjs/gatsby/blob/master/examples/using-page-transitions/gatsby-browser.js):\r\n\r\n```js\r\nconst getUserConfirmation = (pathname, callback) => {\r\n  const event = new CustomEvent(historyExitingEventType, { detail: { pathname } })\r\n  window.dispatchEvent(event)\r\n  setTimeout(() => {\r\n    callback(true)\r\n  }, timeout)\r\n}\r\n```\r\n\r\n...which is not possible anymore. I'm not sure if something like this would go against the accessibility concern of Reach Router, but I think this should be possible in Gatsby. Any thoughts?"}}
{"actor":{"display_login":"fabe"}}