React.js

The R in MERN is a library, not a framework. React 7,897 does one thing: it turns data into a description of a user interface and keeps the DOM in agreement with that description as the data changes. Everything else — routing, forms, data fetching, a store — is a choice you make on top of it. That is why a React chapter is long: the library is small, and the decisions around it are not.

You write components: plain JavaScript functions that take an object of inputs and return markup. React calls them, compares the result with what it rendered last time, and touches only the DOM nodes that differ. You never again have to remember which of seven event handlers also has to hide the error message. State changes; the screen follows.

The version here is React 19.3.0, released on 9 September 2026, which has absorbed much of the boilerplate older tutorials still teach: refs are ordinary props, use reads a promise inside render, form actions handle pending and error states, and the React Compiler can insert memoization for you. Class components, propTypes and ReactDOM.render appear only where you need to recognize them in old code. Front-End Web Development covers the JavaScript, TypeScript, DOM and CSS underneath; Express.js supplies the Express 24,430 API these examples call, and Next.js takes server components from concept to practice.

What you will learn

Sections