# Getting Started

## Installing Node.js / NPM

To get start, install [Node.js](https://nodejs.org/en/) from Node's site, or [your package manager of choice](https://nodejs.org/en/download/package-manager/). For advanced usage [Node Version Manager (nvm)](https://github.com/nvm-sh/nvm#installing-and-updating) may be useful.

**Optionally,** install `Yarn`, which tends to make dependency management a bit less painful. After installing `Node`/`npm`:

```bash
npm install --global yarn
```

## Installing Degit

The easiest way to get start with WebGeoDa scaffolding is with [`Degit`](https://github.com/Rich-Harris/degit). Install `Degit` with:

```bash
npm i -g degit
```

**Alternatively** you can fork the repository directly [@nofurtherinformation/webgeoda](https://github.com/nofurtherinformation/webgeoda).

## Scaffolding Your Project

Next, in your terminal, you can create a new WebGeoDa scaffolding like this:

{% tabs %}
{% tab title="Yarn" %}

```bash
npx degit nofurtherinformation/webgeoda my-webgeoda-project
cd my-webgeoda-project

yarn
```

{% endtab %}

{% tab title="NPM" %}

```bash
npx degit nofurtherinformation/webgeoda my-webgeoda-project
cd my-webgeoda-project

npm install
```

{% endtab %}
{% endtabs %}

## Mapbox API Key

Mapbox tiles are the default background tiles for WebGeoDa scaffolding's maps. If you want to use [Mapbox](https://www.mapbox.com/), make an account and generate an API token. Then, create a file called `.env.local` in the project root folder with your API key as shown below:

```
NEXT_PUBLIC_MAPBOX_TOKEN=pk.abcdefg01189998819991197253...
```

## Starting the Dev Server

To run the local development server, open your terminal and get started like so:

{% tabs %}
{% tab title="Yarn" %}

```bash
yarn dev
```

{% endtab %}

{% tab title="NPM" %}

```bash
npm run dev
```

{% endtab %}
{% endtabs %}

## We're in.

You now have the basic WebGeoDa scaffolding ready to go! From here, why not [add some data](https://github.com/nofurtherinformation/webgeoda-gitbook/tree/e7c5f1171692ee9ee9265cd6740ccf40ec01cf9d/data/import.md), [customize static pages](https://github.com/nofurtherinformation/webgeoda-gitbook/tree/e7c5f1171692ee9ee9265cd6740ccf40ec01cf9d/pages/static/readme.md), or check out the default [file structure](https://github.com/nofurtherinformation/webgeoda-gitbook/tree/e7c5f1171692ee9ee9265cd6740ccf40ec01cf9d/data/file-structure.md) to see how things fit together?
