> For the complete documentation index, see [llms.txt](https://gh-viewer.gitbook.io/creating-a-cross-platform-app-using-react/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gh-viewer.gitbook.io/creating-a-cross-platform-app-using-react/prerequisites.md).

# Prerequisites

This guide assumes you are already familiar with JavaScript and front-end development using [React](https://facebook.github.io/react/).

If you're not already familiar with other libraries of the React ecosystem such as [React Native](https://facebook.github.io/react-native/), [Redux](http://redux.js.org/) and [GraphQL](http://graphql.org/)/[Relay](https://facebook.github.io/relay/), this guide can eventually serve as an introduction to them but it will focus on using them rather than going deeper into their purpose.

## Initial setup

Before starting to create the app, let's make sure you have the basic tooling needed, you will need:

* Your code editor of choice. If you don't know what to use, a few suggestions are [Atom](https://atom.io/), by GitHub, [Nuclide](https://nuclide.io/), built on top of Atom by Facebook, and [Visual Studio Code](https://code.visualstudio.com/), by Microsoft.
* [git](https://git-scm.com/)
* [node](https://nodejs.org) v8+ (older versions may work as well, but this guide is made using node 8)
* [Yarn](https://yarnpkg.com) (not mandatory as you can also use [npm](https://www.npmjs.com/), packaged with node, but Yarn is faster and this guide will use it)
* A [GitHub](https://github.com/) account, to access GitHub's API and create an integration

All good? Great! Let's start by creating the project using React Native!
