Created in 2013 by Facebook, React is a component library for the creation of Single Page Applications (SPA). React is based on a Virutal DOM in order to optimize the successive renderings of the application following data changes. React's data flow is unidirectional and downward. The JSX syntax makes it possible to make HTML dynamic by adding javascript to the template!
Being agnostic of the chosen implementation, react often comes with other libraries such as React Router, Redux, or Material-ui.
Initially often used only on the browser side (Client-side Rendering), React is now also used on the server side to improve performance on older devices but also SEO. Other creation modes with react have emerged such as SSG (Static Site Generator) or Hybrid SSR (SSR + SSG) with libraries like Next.js but also Headless CMS such as Gatsby
The official documentation is a good start!
The React developer community is also very active:
A good base in Javascript is essential. Indeed, JSX relies heavily on JavaScript and its syntax, notably ES6, the Array API (map, filter, reduce) and the destructuring of objects for readability. Understanding HTML and CSS is useful, but libraries can help you create components and style them faster. In the style libraries we find for example Tailwind, and in the components react-bootstrap or Semantic UI