Thanks :) And not just for reusability of components... React's memoization features helped me prevent so much unnecessary re-rendering (the grid alone has about 1000 divs.)
Clever - You might be interested in Clojurescripts Reagent, which is a React wrapper that gives you a lot of memoization for free. Re-doing this in cljs would be a great learning exercise.