We’ve had a lot of questions about what’s powering our new interface, so here’s a brief rundown:
Everything inside the
<body> tag is rendered with React components.
We tried a lot of JS frameworks and libraries to help us make the UI more dynamic. The one that fit best was React. It provides a powerful way to make reusable components and the one-way data flow makes a lot of sense. With React, our code is understandable, small, and fast.
React doesn’t have anything for routing. We tried a bunch of these as well and settled on Backbone’s router. It’s simple, it works.
We are using d3 to render our charts. d3 is pretty amazing. We’re using maybe 1% of its API, but were able to replicate our hand-coded server-drawn charts quite easily.
Nothing has changed on the backend, we still use Go for everything. It does a marvelous job with JSON.