{"componentChunkName":"component---src-templates-blog-js","path":"/blog/2013/10/3/community-roundup-9.html","result":{"data":{"markdownRemark":{"html":"<p>We organized a React hackathon last week-end in the Facebook Seattle office. 50 people, grouped into 15 teams, came to hack for a day on React. It was a lot of fun and we’ll probably organize more in the future.</p>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/static/16bbe4b6c8d5939f92e6a7c9afca22c2/6aca1/react-hackathon.jpg\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 650px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 38.095238095238095%; position: relative; bottom: 0; left: 0; background-image: url('data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAIABQDASIAAhEBAxEB/8QAFgABAQEAAAAAAAAAAAAAAAAAAAQD/8QAFgEBAQEAAAAAAAAAAAAAAAAAAAEC/9oADAMBAAIQAxAAAAGTUzZgf//EABkQAAMAAwAAAAAAAAAAAAAAAAECAwASE//aAAgBAQABBQIUfY2fD1Y//8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFREBAQAAAAAAAAAAAAAAAAAAEBH/2gAIAQIBAT8Bh//EABoQAAMAAwEAAAAAAAAAAAAAAAABESEiMmH/2gAIAQEABj8C6notnYXLP//EABoQAAICAwAAAAAAAAAAAAAAAAABEUEhMVH/2gAIAQEAAT8hW2yoYddybHnWx2f/2gAMAwEAAgADAAAAEPwv/8QAFREBAQAAAAAAAAAAAAAAAAAAEBH/2gAIAQMBAT8Qp//EABgRAAIDAAAAAAAAAAAAAAAAAAARATFR/9oACAECAQE/EEVCjD//xAAcEAACAgIDAAAAAAAAAAAAAAABEQAhQVGBodH/2gAIAQEAAT8Qvw4FlrfkJK+2hw6hynDHKqf/2Q=='); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"react hackathon\"\n        title=\"\"\n        src=\"/static/16bbe4b6c8d5939f92e6a7c9afca22c2/6aca1/react-hackathon.jpg\"\n        srcset=\"/static/16bbe4b6c8d5939f92e6a7c9afca22c2/60342/react-hackathon.jpg 210w,\n/static/16bbe4b6c8d5939f92e6a7c9afca22c2/65f94/react-hackathon.jpg 420w,\n/static/16bbe4b6c8d5939f92e6a7c9afca22c2/6aca1/react-hackathon.jpg 650w\"\n        sizes=\"(max-width: 650px) 100vw, 650px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    </p>\n<h2 id=\"react-hackathon-winner\"><a href=\"#react-hackathon-winner\" aria-hidden class=\"anchor\"><svg aria-hidden=\"true\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>React Hackathon Winner </h2>\n<p><a href=\"http://bold-it.com/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Alex Swan</a> implemented <a href=\"http://qu.izti.me/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Qu.izti.me</a>, a multi-player quiz game. It is real-time via Web Socket and mobile friendly.</p>\n<blockquote>\n<p>The game itself is pretty simple. People join the “room” by going to <a href=\"http://qu.izti.me/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">http://qu.izti.me</a> on their device. Large displays will show a leaderboard along with the game, and small displays (such as phones) will act as personal gamepads. Users will see questions and a choice of answers. The faster you answer, the more points you earn.</p>\n<p>In my opinion, Socket.io and React go together like chocolate and peanut butter. The page was always an accurate representation of the game object.</p>\n<figure><a href=\"http://bold-it.com/javascript/facebook-react-example/\">\n  <span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block;  max-width: 400px; margin-left: auto; margin-right: auto;\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 82.85714285714286%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAARCAIAAABSJhvpAAAACXBIWXMAAA7EAAAOxAGVKw4bAAADEklEQVQ4y6WRX0hTURzHbz6otY3qqZylgfUSQUmgGNo/alJZUWZPPZUpoW1TjJ7EammLzGWpswx0EvkQZhlRYYUrCjSzLefu3Xb/7M+9d7tzpGxuu7tXO507xYp86/A5X77nBx9+DwdJSUnJVq7fvm1rYX5eUUH+rrydOZuyNyozsjKVy5K9IROSk521ds1qJC0tXdfS9dRs/WD1jTiCVm+4/72l+9lH0/NPy9L1+M2d7oG2vneHT55BVqTJDxm9pf0g/75Y0PWz4CEo6gF7TGC3Scol9vZKwFL8CBzvE8tegC0n6pFVMtnnkTF/8Ec4JkRiAkwPw/nYIB0I+fxTEC/LuWk/5VsEdtJDT4dj1WotIpfL7JMTiXhsTkiEZ6ZhYuik9dv4hPWbZfwrTMxuc2JoKMhxfjbI+SEsQ/OxqFajQWQymR1FI5FINBrl+YQgiBarZejt0LB52GyW7ujoqMVipSiKIEgcJ3Acd7lcU6GQRi3JcpsTD83MhnlBBADKtu+T9u8Y6aQIB0niFJl0XE6o4E6HExYMxbhAUC3Jq1aiw4Mig/LUeIL4IkRCHg9NOjxul5dyeWmGZjmaDTB+LkmQheljvVF+VlujQeTpqVTPJWBum3/ZCAbrBc8kS0yzDj/rCEAY1P8vXhsdoWPqSijLFW4vDQCYn5uHOc3GXrVirwwozNd3sUG9baDR9qzpL/qvW4cMnrJ9FVCWu92UJIsCTICSoEQDjmrBsRqJ4ipQeBYUlYOic0uIcLLvwtWsHQuyG1pzyc1sIH7TiOsfkPpOQm8k9O1OfYu9vc3e3Gq/YbDrkzTdnmjt9O1XVf4pz8GcwrheldF0oN2k6jAd7JBSZew73dN75D4spmKJblX7kxLTsZxD0j8TBAG1BB+HXyXiY3zlBr4ig6/I5CuU/HmpxOty41Wb+fJ10vN8xmx5BqjKvJyrQBQKBcMw0uZ5aXNQ9BlITTNRfZu4uADs9zyXDaR2aXjLUdURqjtcV4CkpqbW1tbqdLqGhoYri0f3N9eS/J7U119paWktLT2F/M/5BZ4ed0SkBvWTAAAAAElFTkSuQmCC&apos;); background-size: cover; display: block;\">\n      <img class=\"gatsby-resp-image-image\" style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\" alt=\"quiztime\" title src=\"/static/87c3ca8abe022b961986036616c132ba/e17e5/quiztime.png\" srcset=\"/static/87c3ca8abe022b961986036616c132ba/65ed1/quiztime.png 210w,\n/static/87c3ca8abe022b961986036616c132ba/e17e5/quiztime.png 400w\" sizes=\"(max-width: 400px) 100vw, 400px\">\n    </span>\n  </span>\n  </a></figure>\n<p><a href=\"http://bold-it.com/javascript/facebook-react-example/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Read More…</a></p>\n</blockquote>\n<h2 id=\"jsconf-eu-talk-rethinking-best-practices\"><a href=\"#jsconf-eu-talk-rethinking-best-practices\" aria-hidden class=\"anchor\"><svg aria-hidden=\"true\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>JSConf EU Talk: Rethinking Best Practices </h2>\n<p><a href=\"http://www.petehunt.net/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Pete Hunt</a> presented React at JSConf EU. He covers three controversial design decisions of React:</p>\n<ol>\n<li>Build <strong>components</strong>, not templates</li>\n<li>Re-render the whole app on every update</li>\n<li>Virtual DOM</li>\n</ol>\n<p>The video will be available soon on the <a href=\"http://2013.jsconf.eu/speakers/pete-hunt-react-rethinking-best-practices.html\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">JSConf EU website</a>, but in the meantime, here are Pete’s slides:</p>\n<figure><iframe src=\"https://www.slideshare.net/slideshow/embed_code/26589373\" width=\"100%\" height=\"450\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" allowfullscreen></iframe></figure>\n<h2 id=\"pump---clojure-bindings-for-react\"><a href=\"#pump---clojure-bindings-for-react\" aria-hidden class=\"anchor\"><svg aria-hidden=\"true\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Pump - Clojure bindings for React </h2>\n<p><a href=\"http://solovyov.net/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Alexander Solovyov</a> has been working on React bindings for ClojureScript. This is really exciting as it is using “native” ClojureScript data structures.</p>\n<div class=\"gatsby-highlight\" data-language=\"ruby\"><pre class=\"gatsby-code-ruby\"><code class=\"gatsby-code-ruby\"><span class=\"token punctuation\">(</span>ns your<span class=\"token punctuation\">.</span>app\n  <span class=\"token punctuation\">(</span><span class=\"token symbol\">:require</span><span class=\"token operator\">-</span>macros <span class=\"token punctuation\">[</span>pump<span class=\"token punctuation\">.</span><span class=\"token keyword\">def</span><span class=\"token operator\">-</span>macros <span class=\"token symbol\">:refer</span> <span class=\"token punctuation\">[</span>defr<span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span>\n  <span class=\"token punctuation\">(</span><span class=\"token symbol\">:require</span> <span class=\"token punctuation\">[</span>pump<span class=\"token punctuation\">.</span>core<span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">)</span>\n\n<span class=\"token punctuation\">(</span>defr <span class=\"token constant\">Component</span>\n  <span class=\"token symbol\">:get</span><span class=\"token operator\">-</span>initial<span class=\"token operator\">-</span>state <span class=\"token comment\">#(identity {:some-value \"\"})</span>\n\n  <span class=\"token punctuation\">[</span>component props state<span class=\"token punctuation\">]</span>\n\n  <span class=\"token punctuation\">[</span><span class=\"token symbol\">:div</span> <span class=\"token punctuation\">{</span><span class=\"token symbol\">:class</span><span class=\"token operator\">-</span>name <span class=\"token string\">\"test\"</span><span class=\"token punctuation\">}</span> <span class=\"token string\">\"hello\"</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span></code></pre></div>\n<p><a href=\"https://github.com/piranha/pump\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Check it out on GitHub…</a></p>\n<h2 id=\"jsxhint\"><a href=\"#jsxhint\" aria-hidden class=\"anchor\"><svg aria-hidden=\"true\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>JSXHint </h2>\n<p><a href=\"http://blog.selfassembled.org/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Todd Kennedy</a> working at <a href=\"http://www.condenast.com/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Condé Nast</a> implemented a wrapper on-top of <a href=\"http://www.jshint.com/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">JSHint</a> that first converts JSX files to JS.</p>\n<blockquote>\n<p>A wrapper around JSHint to allow linting of files containing JSX syntax. Accepts glob patterns. Respects your local .jshintrc file and .gitignore to filter your glob patterns.</p>\n<div class=\"gatsby-highlight\" data-language=\"text\"><pre class=\"gatsby-code-text\"><code class=\"gatsby-code-text\">npm install -g jsxhint</code></pre></div>\n<p><a href=\"https://github.com/CondeNast/JSXHint\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Check it out on GitHub…</a></p>\n</blockquote>\n<h2 id=\"turbo-react\"><a href=\"#turbo-react\" aria-hidden class=\"anchor\"><svg aria-hidden=\"true\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Turbo React </h2>\n<p><a href=\"https://twitter.com/ssorallen\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Ross Allen</a> working at <a href=\"http://mesosphere.io/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Mesosphere</a> combined <a href=\"https://github.com/rails/turbolinks/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Turbolinks</a>, a library used by Ruby on Rails to speed up page transition, and React.</p>\n<blockquote>\n<p>“Re-request this page” is just a link to the current page. When you click it, Turbolinks intercepts the GET request and fetchs the full page via XHR.</p>\n<p>The panel is rendered with a random panel- class on each request, and the progress bar gets a random widthX class.</p>\n<p>With Turbolinks alone, the entire <body> would be replaced, and transitions would not happen. In this little demo though, React adds and removes classes and text, and the attribute changes are animated with CSS transitions. The DOM is otherwise left intact.</p>\n<figure><a href=\"https://turbo-react.herokuapp.com/\">\n  <span class=\"gatsby-resp-image-wrapper\" style=\"position: relative; display: block;  max-width: 566px; margin-left: auto; margin-right: auto;\">\n    <span class=\"gatsby-resp-image-background-image\" style=\"padding-bottom: 37.61904761904762%; position: relative; bottom: 0; left: 0; background-image: url(&apos;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAICAIAAAB2/0i6AAAACXBIWXMAAA7DAAAOwwHHb6hkAAAA6UlEQVQY042Ob0vDMBCH81V9oaCfSXCoIC36VvClLwYTYfPfZG2CoCx1bdJ0Q02iuVzMOhAVK3t4+HF33MERPc+jZsHMnIHhYL/5q/3hFGxB4obTS8EUwUkEiU7E9Kv8qPx7l4LIup6VVa2aSrRIuVDNa1FqqTSv4M2GbkjwIUBYZhTbGbY1oLcWAdr+b0lKj05YesySVaZ5kmTJweRwWI48eGP/g5zmF2f08svh7PpO3I7KK/7C0aMDB92Qjd18Z59t9eh2j27u0ezZxMc9YlgDcn7z0B8/9u+fBhkfTKaFkKpRWut1jj8B0XnAhj1T484AAAAASUVORK5CYII=&apos;); background-size: cover; display: block;\">\n      <img class=\"gatsby-resp-image-image\" style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\" alt=\"turboreact\" title src=\"/static/5edcabbaa9ea84c0267c62e69efcb513/6fe44/turboreact.png\" srcset=\"/static/5edcabbaa9ea84c0267c62e69efcb513/65ed1/turboreact.png 210w,\n/static/5edcabbaa9ea84c0267c62e69efcb513/d10fb/turboreact.png 420w,\n/static/5edcabbaa9ea84c0267c62e69efcb513/6fe44/turboreact.png 566w\" sizes=\"(max-width: 566px) 100vw, 566px\">\n    </span>\n  </span>\n  </a></figure>\n<p><a href=\"https://turbo-react.herokuapp.com/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Check out the demo…</a></p>\n</blockquote>\n<h2 id=\"reactive-table\"><a href=\"#reactive-table\" aria-hidden class=\"anchor\"><svg aria-hidden=\"true\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Reactive Table </h2>\n<p><a href=\"http://www.phpied.com/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Stoyan Stefanov</a> continues his series of blog posts about React. This one is an introduction tutorial on rendering a simple table with React.</p>\n<blockquote>\n<p>React is all about components. So let’s build one.</p>\n<p>Let’s call it Table (to avoid any confusion what the component is about).</p>\n<div class=\"gatsby-highlight\" data-language=\"jsx\"><pre class=\"gatsby-code-jsx\"><code class=\"gatsby-code-jsx\"><span class=\"token keyword\">var</span> Table <span class=\"token operator\">=</span> React<span class=\"token punctuation\">.</span><span class=\"token function\">createClass</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">{</span>\n  <span class=\"token comment\">/*stuff goeth here*/</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>You see that React components are defined using a regular JS object. Some properties and methods of the object such as render() have special meanings, the rest is upforgrabs.</p>\n<p><a href=\"http://www.phpied.com/reactive-table/\" target=\"_blank\" rel=\"nofollow noopener noreferrer\">Read the full article…</a></p>\n</blockquote>","excerpt":"We organized a React hackathon last week-end in the Facebook Seattle office. 50 people, grouped into 15 teams, came to hack for a day on React. It was a lot of fun and we’ll probably organize more in the future.  React Hackathon Winner  Alex Swan implemented Qu.izti.me, a multi-player quiz game. It is real-time via Web Socket and mobile friendly. The game itself is pretty simple. People join the “room” by going to http://qu.izti.me on their device. Large displays will show a leaderboard along…","frontmatter":{"title":"Community Round-up #9","next":null,"prev":null,"author":[{"frontmatter":{"name":"Vjeux","url":"https://twitter.com/vjeux"}}]},"fields":{"date":"October 03, 2013","path":"content/blog/2013-10-3-community-roundup-9.md","slug":"/blog/2013/10/3/community-roundup-9.html"}},"allMarkdownRemark":{"edges":[{"node":{"frontmatter":{"title":"Introducing the New JSX Transform"},"fields":{"slug":"/blog/2020/09/22/introducing-the-new-jsx-transform.html"}}},{"node":{"frontmatter":{"title":"React v17.0 Release Candidate: No New Features"},"fields":{"slug":"/blog/2020/08/10/react-v17-rc.html"}}},{"node":{"frontmatter":{"title":"React v16.13.0"},"fields":{"slug":"/blog/2020/02/26/react-v16.13.0.html"}}},{"node":{"frontmatter":{"title":"Building Great User Experiences with Concurrent Mode and Suspense"},"fields":{"slug":"/blog/2019/11/06/building-great-user-experiences-with-concurrent-mode-and-suspense.html"}}},{"node":{"frontmatter":{"title":"Preparing for the Future with React Prereleases"},"fields":{"slug":"/blog/2019/10/22/react-release-channels.html"}}},{"node":{"frontmatter":{"title":"Introducing the New React DevTools"},"fields":{"slug":"/blog/2019/08/15/new-react-devtools.html"}}},{"node":{"frontmatter":{"title":"React v16.9.0 and the Roadmap Update"},"fields":{"slug":"/blog/2019/08/08/react-v16.9.0.html"}}},{"node":{"frontmatter":{"title":"Is React Translated Yet? ¡Sí! Sim! はい！"},"fields":{"slug":"/blog/2019/02/23/is-react-translated-yet.html"}}},{"node":{"frontmatter":{"title":"React v16.8: The One With Hooks"},"fields":{"slug":"/blog/2019/02/06/react-v16.8.0.html"}}},{"node":{"frontmatter":{"title":"React v16.7: No, This Is Not the One With Hooks"},"fields":{"slug":"/blog/2018/12/19/react-v-16-7.html"}}}]}},"pageContext":{"slug":"/blog/2013/10/3/community-roundup-9.html"}},"staticQueryHashes":[]}