React JS
React Learning Module

Introduction

What is React?

React (sometimes styled React.js or ReactJS) is an open-source JavaScript library providing a view for data rendered as HTML. React views are typically rendered using components that contain additional components specified as custom HTML tags. React promises programmers a model in which subcomponents cannot directly affect enclosing components (“data flows down”); efficient updating of the HTML document when data changes; and a clean separation between components on a modern single-page application.
Wikipedia

Motivation for this tutorial

This module aims to provide a solid knowledge base for everyone trying to learn React, by walking you, the curious developer, through the making of a small, simplified, yet non-trivial e-commerce application.

Prerequisites

Although some of these tools/libraries are not mandatory for working with React, they have proven to be very useful and they help speeding up React development quite a lot. Also, you’ll probably need to know most of them when working with real React projects.

You must know the following, intermediate level at least:
You should know the following:
Not really a necessity but very useful in conjunction with React

Note: This guide assumes you know the React basics. Although most of the concepts will be briefly explained here, I recommend at least reading the official React documentation first.