React is a JavaScript library created by Facebook for building user interfaces. It renders the entire application on every change by using a virtual DOM that represents the real DOM as a JavaScript object. When state changes, React compares the virtual DOM to the previous one and only updates what changed in the real DOM for better performance than traditional frameworks that update pieces of the DOM individually.