# Initial Dev Environment Setup

{% hint style="success" %}
***Remember to enter your own GOOGLE API KEY in the source code in the place of YOUR\_API\_KEY. Without this api key, many functionalities might not work, especially maps. Check the*** [***docs***](https://enappd.gitbook.io/ionic-taxi-booking-app-starter/extra/app-specific-requirements) ***for more info***
{% endhint %}

These setups are needed before you can start working on this App platform. Make sure you have all the updated platform and framework needed :

1. **Installing Ionic**
2. **Install the Ionic CLI**
3. **Node & npm**
4. **Git**
5. **Code Editor**
6. **Install the app dependencies**

### **1.1 Installing Ionic**

Ionic apps are created and developed primarily through the Ionic [command-line](https://ionicframework.com/docs/faq/glossary#cli) utility. The Ionic CLI is the preferred method of installation, as it offers a wide range of dev tools and help options along the way.

### 1.2 Install the Ionic CLI <a href="#install-the-ionic-cli" id="install-the-ionic-cli"></a>

Before proceeding, make sure the latest version of [Node.js](https://ionicframework.com/docs/faq/glossary#node) and [npm](https://ionicframework.com/docs/faq/glossary#npm) are installed. See [Environment Setup](https://ionicframework.com/docs/installation/environment) for details. Install the Ionic CLI globally with npm:

```
$ npm install -g ionic
```

### &#x20;<a href="#node-amp-npm" id="node-amp-npm"></a>

### 1.3 Node & npm <a href="#node-amp-npm" id="node-amp-npm"></a>

Almost all tooling for modern JavaScript projects is based in [Node.js](https://ionicframework.com/docs/faq/glossary#node). The [download page](https://nodejs.org/en/download/) has prebuilt installation packages for all platforms. We recommend selecting the LTS version to ensure best compatibility.

Node is bundled with [npm](https://ionicframework.com/docs/faq/glossary#npm), the package manager for JavaScript.

To verify the installation, open a new terminal window and run:

```
$ node --version
$ npm --version
```

This starter app will run best with **node 12.x +**&#x20;

Node and NPM version are constantly updated so if you face any issue in setup, or warnings in `npm audit` feel free to contact us.

###

### 1.4 Git

[Git](https://ionicframework.com/docs/faq/glossary#git) is a distributed version-control system for tracking changes in source code during software development. Although it's not required, we highly recommend using Git for your app development.&#x20;

First, install the command-line utility from the [download page](https://git-scm.com/downloads). For a GUI client, we recommend [SourceTree](https://www.sourcetreeapp.com/). To verify the installation, open a new terminal window and run:

```
$ git --version
```

You can also use **Git CLI** to perform all Git related tasks. A good description of all Git CLI commands is given [here](https://git-scm.com/docs/gittutorial).&#x20;

## 1.5 Code Editor <a href="#text-editor" id="text-editor"></a>

Personally we use [VS Code](https://code.visualstudio.com/) , however, many people like [Atom](https://atom.io/). You are free to choose any code editor you like.&#x20;

## 1.6  App Specific Requirements&#x20;

There are few requirements of this app to be fulfilled . So you can check all it feature. They are listed in [App Specific Requirements](https://enappd.gitbook.io/ionic-taxi-booking-app-starter/extra/app-specific-requirements)

## Run the App <a href="#run-the-app" id="run-the-app"></a>

Now we have everything installed, we can test our Ionic App.

Go to [Running the App](https://enappd.gitbook.io/ionic-taxi-booking-app-starter/setup-and-deployment-1/running-the-app) section to see how to do it.
