What is React?
Before getting into what React Native is, it would be beneficial to look at what React is. React is an open source Javascript library used for developing user interfaces (UI). Thanks to small and isolated parts called Components, it allows you to create complex interface units.
If you want to take a look at our article where we provide more detailed information about React and compare it with Angular, you can reach it here .

What is React Native?
Created by Facebook and introduced to use on GitHub in March 2015 with the slogan "Learn Once, Write Anywhere", React Native is a software framework that allows you to create mobile applications on Android and iOS devices using the React, a Javascript library.

Advantages of React Native
-
React Native supports applications that can run on multiple operating systems, i.e. cross-platform. Being cross-platform reduces the development cost of the application and saves time.
-
React Native is relatively simple, fast, and effective.
-
It makes applications lighter and faster, it is user interface (UI) oriented.
-
Another reason for the popularity of the React Native framework in recent years is that it allows development of applications for both platforms at once. So, without needing to learn the Java programming language to develop an Android app, or the Swift programming language for the iOS app, it is a great choice for developers who are experts in Javascript.
-
When developing an application with React Native, when you write a code, you can instantly see the changes you have made in your code thanks to the live reload feature without the need to run it.
Popular Apps Using React Native

Source: https://reactnative.dev/showcase
There are quite a few popular apps developed using React Native, some of which can be seen in the image above.
React Native Installation
Now that we have basic information about React Native, we can learn how to develop apps with React Native.
If you are new to mobile application development and are also new to React Native. Expo, a tool set created around React Native, will make your job much easier at the start. Expo allows you to develop applications without having Android Studio or xCode installed on your computer.
Now, I will show you how to install Expo and how to run our first project through Expo.
-
Node.js must be installed on your computer. If Node.js is not already installed, you can download and install it from here .
-
If Node.js is installed correctly, type and run "npm install -g expo-cli" in the command line.

-
Now that the installation is complete, we can start the server for our first project, for that,
expo init HelloWorld
cd AwesomeProject
npm start
should be typed and run in the command line again. When these codes are run, you will have started a development server.
If everything goes well, such a screen will open in your browser.

After this screen opens, you need to select from the left side menu for which environment you will develop the project. For example, if we click on the Run in web browser option, we will be able to view our project in the internet browser.
First Project:
We had created our project file during the installation stage. If you haven't made any changes, our project file, the HelloWorld folder, is located in the users folder on the C drive under the name HelloWorld. You can open the app.js file inside this folder with Visual Studio Code, or with another code editor if you use it.

We will encounter these codes when we open it. From this page, you can now edit the codes or create a new project. The changes you save on Visual Studio Code will instantly be visible on the virtual server opened via Expo.

With Expo, React Native applications can be easily created like this. In addition to Expo, you can also make your React Native applications by doing Android Studio and xCode installations on your computer without being connected to the browser.
If you are using a computer with Windows operating system, you can only develop applications for Android system with Android Studio setup. If you have iOS operating system, you can develop React Native applications with xCode. How to do all these installations and how to develop React Native applications in these environments are explained on React Native's official website .
I touched on what React Native, one of the highly popular mobile application development approaches of recent times, is, its advantages, popular applications developed with React Native, and how applications can be developed over the browser. React Native has many competitors. I will continue to examine platforms like Flutter and Ionic and share their differences with you.