There’s an article by Tom MacWright that’s been gaining some attention in the twitter-verse: Second-guessing the modern web. I’d recommend reading it if you haven’t already, but I’ll give a brief summary so you have some context for the remainder of this article:
It seems like the norm for web development today is a single-page React application. This makes it easy to add interactivity to your pages, but it comes at a pretty big cost. Techniques like bundle splitting and server-side rendering can somewhat alleviate this cost, but they come with their own caveats. Maybe everyone’s wrong.
A little over a week ago (10/25) at ReactConf Dan Abramov & Sophie Alpert announced the Hooks proposal. Instead of rehashing things here, I’m going to jump right in. If you’re lacking context, check out those links and Dan’s article.
The latest release of Marko, the friendly (and fast!) UI library from eBay is now available!
If you’ve not heard of Marko, it is a library for building component-based user interfaces for the web with a focus on speed and ease of use. Marko is a perfect fit for Node.js and for building multi-page apps, but it is also a great fit for single page apps. We support both an HTML-like syntax as well as a concise syntax (think haml/jade/pug).
Try it out online and keep reading to find out what’s new.
Last week Alibaba announced a React-like library called Rax. Rax is a more lightweight implementation of the React renderer and it’s “universal”. It can run in Node.js, in the browser, and on top of Weex (which is pretty cool).
One of the things that Rax is touting is its server rendering performance. It’s prominently featured in their README and it initially showed that they were rendering at about the 5 times the speed of React using
renderToString on the server. Note: This was not accurate as React was running in dev mode.
The impressive rendering speed was the topic…