React native in 2 minutes

React Native (RN) uses ReactJS (JS Library for building UI) to create apps for ios, android and web using single codebase.
As React uses web elements to create components (Read about it in 2 minutes) , RN uses native elements that exists on ios or android.
React Native philosophy is Learn once, write anywhere

Since RN uses react, we make use of 'Components', which are logical reusable piece of code. When we interact with a React Native app, we make changes to the UI, which can be in form of state or props. These can be used to build your logic surrounding the interactions and events.

For creating mobile apps you would use components such as:
View: Most fundamental component for building UI, its a container that supports layout
Button: For creating a touchable element
ScrollView: Generic scrollable View or container

Now at the runtime, it will use the native component implemented by the platform, so View in React Native changes to 'UIView' in ios and 'Android.View' in android.

With RN, you can obviously tap into the native features given by the platform like:
Camera, Push Notifications, Geolocations

React Native like React has one of the most active open source communities. You can install packages like any other Javascript project. RN has gained lot of popularity in recent times and really grown out to be a mature platform supporting many big projects and promising many more opportunities.