Now that you know about React elements, we can go one level higher and finally look at how to write components.
React components, like Vue.js or Angular ones, are all about composing user interfaces from small and reusable pieces. Of course, components are meant to be composed together. To compose components, you can simply refer to those in JSX code or using React.createElement(...) calls.
Interestingly, in React, there is no need to register components as we need to with Angular. Components that are used just need to be in scope where they are used (that is, they either need to be imported or declared before they are used).
Conceptually, React components are really straightforward: they accept a single (immutable!) props object as input. As output, they return JSX (or React.createElement(...) calls) and, hence, React elements.