Why React

ReactJS is a component-based Javascript library, used for building interactive user interface for websites and mobile applications where data updates in real time. It handles the View in the MVC (Model — View — Controller) model.

React is component-based and everything is a component: the whole page is divided into small parts which together create the view.

Fun fact: when React v0.14 got released in 2015, the Facebook codebase had over 15,000 React components.

The main ReactJS feature is the Virtual-DOM, where data can only go one-way. When there are changes to the data contained in the state of a component, the view of that component and all of its children is re-rendered and updated. This is achieved by comparing two copies of the virtual DOM, the original and the updated, one of the reasons why React is preferred for real-time applications.

Whenever you call setState on a component, React will mark it as dirty: it then looks at all the dirty components and re-renders them and their children.

Christopher Chedeau

React is the world’s most popular JavaScript library/framework.

According to npm’s data This year in JavaScript: 2018 in review and npm’s predictions for 2019 that “React will be the dominant framework in 2019.”

React has reached 60 percent market share, which, as the article says, is unprecedented for a web framework.


  • Backed by Facebook
  • 1285 developers contributing


  • Backed by Google
  • Counts 869 developers


  • No major company backing 😭
  • 269 contributors

According to npm, both React and Angular’s numbers are high enough to indicate these they will remain supported for the next few years.

React is used for all sorts of websites:

Pretty pretty popular

One of the advantages of React is using JSX syntax, syntax extension to JavaScript, which lets you to mix both JSX and Javascript by wrapping in {}. It’s neither a string nor HTML. You can put any valid JavaScript expression inside the curly braces in JSX.

Components are also easy to reuse, simply by importing them at the top of the file. This helps massively to keep your code DRY.

import ICanBeReusedAllTheTime from './someComponent.js'

After you get used to Components, Props and State, it feels like you’re still coding in native Javascript.

Oprah surely loves React

Loved by lots of developers, according to Stack Overflow

React is the most popular, second most used — Stack Overflow

Oh and the documentation is really good!

Web developer, always learning

Love podcasts or audiobooks? Learn on the go with our new app.

Recommended from Medium

Basic web app with Django

7 newsletters to stay current about JavaScript

Learn React Router V6 with a simple example!

How friendly are Single Page Applications to SEO?

Put your npm package on a Strict Diet

Composition I: A Semester of Growth

What we can learn from Angular Material UI component library

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store


Web developer, always learning

More from Medium

How to make a table in React with React Table Library

Reconciliation in React

Creating a Provider to share state between components in React

How to extend component functionality in React