At their core, React and D3 solve the same problem: on data change, how do we efficiently update the dom? But they go about the problem very differently; React has the virtual dom, and D3 couples data-binding with enter-update-exit. So how should we use them together to take advantage of their respective strengths? How should we create React components while maintaining D3 transitions and behaviors? How does Flux fit into this? When should we even use them all together? This talk is centered around the mistakes I made and the things I learned while exploring these questions.