React vs React Native - What's the difference?

Lot of us have been hearing about react javascript (js) for some time now as one of the best front end javascript library giving angular js a tough fight. But now there is a newer framework called react native and it is confusing what's the difference between react and react native. Both sound similar and are developed by facebook.

React JS vs React Native

React is a javascript library that is being used primarily for front-end of websites and allows creating rich and interactive websites.

React Native is a JavaScript library for creating mobile apps and used primarily for android and ios apps. The react native library is built on top of react javascript library. 'Native' in react native means that while react allows you to run your app in the browser, using react native you can create native apps for android and ios.

Before react native became popular, one needs to use java for android app and objective C or swift for ios apps. This led to need to completely different skill set for android vs ios apps and was a costly option for small companies. At the same time, lot of lot of companies were moving to complete javascript stack with rise of backend javascript tech like nodejs. In this environment, react native has emerged as a successful option for mobile app development and has seen tremendous growth due to this.

Technically, one of the core feature of react javascript library is its component model and this is heavily utilized in react native as well.