{"id":10694,"date":"2018-11-02T09:31:40","date_gmt":"2018-11-02T16:31:40","guid":{"rendered":"https:\/\/engineering.fb.com\/?p=10694"},"modified":"2020-03-23T21:48:57","modified_gmt":"2020-03-24T04:48:57","slug":"react-conf","status":"publish","type":"post","link":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/","title":{"rendered":"React Conf recap: Hooks, Suspense, and Concurrent Rendering"},"content":{"rendered":"<p>This year&#8217;s <a href=\"https:\/\/conf.reactjs.org\/\">React Conf<\/a> took place on October 25 and 26 in Henderson, Nevada, where more than 600 attendees gathered to discuss the latest in UI engineering.<\/p>\n<p>Sophie Alpert and Dan Abramov kicked off Day 1 with their keynote, <a href=\"https:\/\/www.youtube.com\/watch?v=V-QO-KO90iQ&amp;index=1&amp;list=PLPxbbTqCLbGE5AihOSExAa4wUM-P42EIJ\">React Today and Tomorrow<\/a>. In the talk, they introduced <a href=\"https:\/\/reactjs.org\/docs\/hooks-intro.html\">Hooks<\/a>, which are a new proposal that adds the ability to access features such as state without writing a JavaScript class. Hooks promise to dramatically simplify the code required for React components and are currently available in a React 16.7 alpha release.<\/p>\n<p>On the morning of Day 2, Andrew Clark and Brian Vaughn presented <a href=\"https:\/\/www.youtube.com\/watch?v=ByBPyMBTzM0&amp;list=PLPxbbTqCLbGE5AihOSExAa4wUM-P42EIJ&amp;index=15\">Concurrent Rendering in React<\/a>. Andrew covered the recently announced <a href=\"https:\/\/reactjs.org\/blog\/2018\/10\/23\/react-v-16-6.html\">React.lazy API for code splitting<\/a> and previewed two upcoming features in 16.7: concurrent mode and Suspense. Brian demonstrated how to use <a href=\"https:\/\/reactjs.org\/blog\/2018\/09\/10\/introducing-the-react-profiler.html\">React&#8217;s new profiler<\/a> tooling to make apps built in React run faster.<\/p>\n<p>In the afternoon, Parashuram N spoke in detail about <a href=\"https:\/\/www.youtube.com\/watch?v=UcqRXTriUVI&amp;index=25&amp;list=PLPxbbTqCLbGE5AihOSExAa4wUM-P42EIJ\">React Native&#8217;s New Architecture<\/a>, a long-term project that the React Native team has been working on over the past year and <a href=\"https:\/\/facebook.github.io\/react-native\/blog\/2018\/06\/14\/state-of-react-native-2018\">announced in June<\/a>. We&#8217;re really excited about the potential of this project to improve performance, simplify interoperability with other libraries, and set a strong foundation for the future of React Native.<\/p>\n<p>Now that the conference is over, all 28 conference talks are <a href=\"https:\/\/www.youtube.com\/playlist?list=PLPxbbTqCLbGE5AihOSExAa4wUM-P42EIJ\">available to stream online<\/a>. There are tons of great ones from both days. We can&#8217;t wait until next year!<\/p>\n<p><a href=\"https:\/\/twitter.com\/reactjs\">Follow us on Twitter<\/a> for more updates and info.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This year&#8217;s React Conf took place on October 25 and 26 in Henderson, Nevada, where more than 600 attendees gathered to discuss the latest in UI engineering. Sophie Alpert and Dan Abramov kicked off Day 1 with their keynote, React Today and Tomorrow. In the talk, they introduced Hooks, which are a new proposal that [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":12,"featured_media":10696,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[174,6],"tags":[],"coauthors":[1005],"class_list":["post-10694","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-open-source","category-web","fb_content_type-article"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v19.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>React Conf recap: Hooks, Suspense, etc. - Engineering at Meta<\/title>\n<meta name=\"description\" content=\"At React Conf 2018, we introduced Hooks, a new proposal that add the ability to access features like state without writing a JavaScript class\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tom Occhino\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/\"},\"author\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#author\",\"name\":\"Tom Occhino\"},\"headline\":\"React Conf recap: Hooks, Suspense, and Concurrent Rendering\",\"datePublished\":\"2018-11-02T16:31:40+00:00\",\"dateModified\":\"2020-03-24T04:48:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/\"},\"wordCount\":250,\"publisher\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/engineering.fb.com\\\/wp-content\\\/uploads\\\/2018\\\/11\\\/ReactConfx1125.png\",\"articleSection\":[\"Open Source\",\"Web\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/\",\"url\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/\",\"name\":\"React Conf recap: Hooks, Suspense, etc. - Engineering at Meta\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/engineering.fb.com\\\/wp-content\\\/uploads\\\/2018\\\/11\\\/ReactConfx1125.png\",\"datePublished\":\"2018-11-02T16:31:40+00:00\",\"dateModified\":\"2020-03-24T04:48:57+00:00\",\"description\":\"At React Conf 2018, we introduced Hooks, a new proposal that add the ability to access features like state without writing a JavaScript class\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#primaryimage\",\"url\":\"https:\\\/\\\/engineering.fb.com\\\/wp-content\\\/uploads\\\/2018\\\/11\\\/ReactConfx1125.png\",\"contentUrl\":\"https:\\\/\\\/engineering.fb.com\\\/wp-content\\\/uploads\\\/2018\\\/11\\\/ReactConfx1125.png\",\"width\":2000,\"height\":1125,\"caption\":\"React Conf recap: Hooks, Suspense, and Concurrent Rendering on engineering.fb.com, Facebook's Engineering blog\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/2018\\\/11\\\/02\\\/web\\\/react-conf\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/engineering.fb.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"React Conf recap: Hooks, Suspense, and Concurrent Rendering\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/#website\",\"url\":\"https:\\\/\\\/engineering.fb.com\\\/\",\"name\":\"Engineering at Meta\",\"description\":\"Engineering at Meta Blog\",\"publisher\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/engineering.fb.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/#organization\",\"name\":\"Meta\",\"url\":\"https:\\\/\\\/engineering.fb.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/engineering.fb.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/Meta_lockup_positive-primary_RGB.jpg\",\"contentUrl\":\"https:\\\/\\\/engineering.fb.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/Meta_lockup_positive-primary_RGB.jpg\",\"width\":29011,\"height\":12501,\"caption\":\"Meta\"},\"image\":{\"@id\":\"https:\\\/\\\/engineering.fb.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/Engineering\\\/\",\"https:\\\/\\\/x.com\\\/fb_engineering\"]},[]]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"React Conf recap: Hooks, Suspense, etc. - Engineering at Meta","description":"At React Conf 2018, we introduced Hooks, a new proposal that add the ability to access features like state without writing a JavaScript class","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/","twitter_misc":{"Written by":"Tom Occhino","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#article","isPartOf":{"@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/"},"author":{"@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#author","name":"Tom Occhino"},"headline":"React Conf recap: Hooks, Suspense, and Concurrent Rendering","datePublished":"2018-11-02T16:31:40+00:00","dateModified":"2020-03-24T04:48:57+00:00","mainEntityOfPage":{"@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/"},"wordCount":250,"publisher":{"@id":"https:\/\/engineering.fb.com\/#organization"},"image":{"@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#primaryimage"},"thumbnailUrl":"https:\/\/engineering.fb.com\/wp-content\/uploads\/2018\/11\/ReactConfx1125.png","articleSection":["Open Source","Web"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/","url":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/","name":"React Conf recap: Hooks, Suspense, etc. - Engineering at Meta","isPartOf":{"@id":"https:\/\/engineering.fb.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#primaryimage"},"image":{"@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#primaryimage"},"thumbnailUrl":"https:\/\/engineering.fb.com\/wp-content\/uploads\/2018\/11\/ReactConfx1125.png","datePublished":"2018-11-02T16:31:40+00:00","dateModified":"2020-03-24T04:48:57+00:00","description":"At React Conf 2018, we introduced Hooks, a new proposal that add the ability to access features like state without writing a JavaScript class","breadcrumb":{"@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#primaryimage","url":"https:\/\/engineering.fb.com\/wp-content\/uploads\/2018\/11\/ReactConfx1125.png","contentUrl":"https:\/\/engineering.fb.com\/wp-content\/uploads\/2018\/11\/ReactConfx1125.png","width":2000,"height":1125,"caption":"React Conf recap: Hooks, Suspense, and Concurrent Rendering on engineering.fb.com, Facebook's Engineering blog"},{"@type":"BreadcrumbList","@id":"https:\/\/engineering.fb.com\/2018\/11\/02\/web\/react-conf\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/engineering.fb.com\/"},{"@type":"ListItem","position":2,"name":"React Conf recap: Hooks, Suspense, and Concurrent Rendering"}]},{"@type":"WebSite","@id":"https:\/\/engineering.fb.com\/#website","url":"https:\/\/engineering.fb.com\/","name":"Engineering at Meta","description":"Engineering at Meta Blog","publisher":{"@id":"https:\/\/engineering.fb.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/engineering.fb.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/engineering.fb.com\/#organization","name":"Meta","url":"https:\/\/engineering.fb.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/engineering.fb.com\/#\/schema\/logo\/image\/","url":"https:\/\/engineering.fb.com\/wp-content\/uploads\/2023\/08\/Meta_lockup_positive-primary_RGB.jpg","contentUrl":"https:\/\/engineering.fb.com\/wp-content\/uploads\/2023\/08\/Meta_lockup_positive-primary_RGB.jpg","width":29011,"height":12501,"caption":"Meta"},"image":{"@id":"https:\/\/engineering.fb.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/Engineering\/","https:\/\/x.com\/fb_engineering"]},[]]}},"jetpack_featured_media_url":"https:\/\/engineering.fb.com\/wp-content\/uploads\/2018\/11\/ReactConfx1125.png","jetpack_shortlink":"https:\/\/wp.me\/pa0Lhq-2Mu","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/posts\/10694","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/comments?post=10694"}],"version-history":[{"count":3,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/posts\/10694\/revisions"}],"predecessor-version":[{"id":10699,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/posts\/10694\/revisions\/10699"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/media\/10696"}],"wp:attachment":[{"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/media?parent=10694"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/categories?post=10694"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/tags?post=10694"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/engineering.fb.com\/wp-json\/wp\/v2\/coauthors?post=10694"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}