Has anyone actually used this?
I've read a lot of good things about it but I'd like to hear from someone who used it in production.
What are the main advantages/difference from, say AngularJS?
I have started using this fairly extensively in production.
First of all, I'm very impressed with its performance; the fact the it makes very aggressive optimizations to any DOM-related code removes one of the biggest inefficiencies in UI development.
It not vastly different to a typical Angular workflow, though is perhaps less opinionated. Like Angular, it encourages you to be very modular, and think about UIs in terms of components. Ultimately, this leads to very portable code, much in the same way the Angular directives do.
If you are keen on data-binding, then it's a slightly different approach: React treats the UI as a representation of state, so any change to state triggers a re-render. (Thanks to DOM optimizations, this is not as expensive as it sounds, but it takes a bit of getting used to).
I'd say that the biggest difference to Angular is that it doesn't proclaim to be anything other than a view layer - you still need to provide data modeling, routing, etc. (Incidentally, it works very well with Backbone). It just depends whether you like that idea.