Development · Term

React

React is an open-source JavaScript library, created at Facebook (now Meta) and developed in the open by a large community, for building interactive user interfaces out of reusable pieces called components.

React handles one job: keeping what is on screen in step with the data behind it. A developer describes how a part of the page should look for given data, and React updates the page efficiently when that data changes. It is widely used for web apps, dashboards and interactive sites, and React Native applies the same ideas to mobile apps.

React on its own is not a complete website framework. It does not decide how pages are routed, how data is loaded or how pages are delivered to search engines. Frameworks built on top of it, such as Next.js, add those parts.

How it works

A React interface is built from components, small self-contained pieces such as a button, a product card or a booking form. Each component is a function that takes some data and returns a description of what to show. Components are combined into bigger ones, so a page is a tree of components, and the same product card can be reused across the shop.

Components can hold state, values that change while the visitor uses the page, such as the selected date or the items in a basket. When state changes, React works out which parts of the page are affected and updates only those, so the interface responds without a full page reload.

Used on its own, React runs in the browser, which means the visitor's device downloads the JavaScript and builds the page itself. That suits logged-in apps but can make public pages slower to appear and harder for some crawlers to read. React can also run on the server to send ready-made HTML, which is what server-side rendering frameworks do.

Example

A property agency builds a search tool where visitors filter listings by price, rooms and area and see results update instantly as they drag a slider. Each listing card, filter and map pin is a React component, and the results list re-renders whenever the filters change, without reloading the page.

The first version renders everything in the browser, and the listing pages are slow to show up in search. The team moves the listing pages to a React framework that renders them on the server, so each property page arrives as complete HTML that crawlers can read, while the interactive filters keep working the same way. The listing pages also get proper titles and descriptions in their HTML, so each property can be shared on social media with a correct preview. None of the components had to be rewritten; only where they ran changed.

Why it matters for your business

React is a sound choice for interactive products, and React developers are easy to find, which keeps hiring and handover practical. It is often more than a brochure site needs: a mostly text-and-image site built as a browser-only React app can be heavier, slower on phones and harder for search engines and AI crawlers than plain HTML. If your developer proposes React, ask how public pages will be rendered and whether non-developers will still be able to edit content through a CMS. A clear answer to both questions is a good sign that the choice was made for the project rather than out of habit.

Common mistakes

  • Building a simple content site as a browser-only React app and then struggling with speed and search visibility.
  • Adding large component libraries for a handful of buttons and inflating the JavaScript every visitor downloads.
  • Leaving no way for staff to edit text without a developer changing code.
  • Letting dependencies go years without updates until upgrading becomes a project of its own.

Questions people ask

Is React a framework or a library?

React describes itself as a library for building user interfaces. It handles components and rendering but leaves routing, data loading and server delivery to other tools. In practice it is usually used inside a framework such as Next.js, which is why people often call it a framework.

Is React bad for SEO?

Not inherently. Problems arise when pages are built only in the browser, because search engines must run the JavaScript to see the content and many AI crawlers do not. Rendering pages on the server or ahead of time, as React frameworks allow, avoids this.

Do I need React for my business website?

Usually not for a brochure site, which works well with a CMS or plain HTML and CSS. React earns its place when the site has significant interactivity, such as configurators, dashboards, search tools or logged-in customer areas that update constantly.

Related terms

Have something worth building right?