# Quick Start

### Requirements

**Reactium** requires a minimum of [Node 18](https://nodejs.org/en) LTS (Recommended), and supports up to Node 20.

### Create a starter React app

Before we get into the multitude of pieces and uses of the whole platform, let's get into the easiest and fastest way to get started. If you just want to feel the instant power of the first major and important piece of the platform you can get up and going very quickly with the Reactium App Foundation.

* [ ] Install [git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) and [Node.js](https://nodejs.org/en)
* [ ] Create a new application in the directory of your choice

```bash
mkdir my-app # whatever you want
cd my-app
npx reactium init
```

{% hint style="info" %}
To just use **`reactium`** instead of **`npx reactium`**, install it globally with:\
\&#xNAN;**`npm install -g reactium`**
{% endhint %}

<figure><img src="https://2573846121-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-M4poMvugQiWii-2eM1T%2Fuploads%2FKR0ShqxVvEx3YiEIEcyw%2Freactium-init.jpg?alt=media&#x26;token=a585f3ae-c5d7-4780-b0cb-43f65aef1f99" alt=""><figcaption><p><code>reactium init</code> can create Web or API projects</p></figcaption></figure>

{% hint style="success" %}
Great! Now you've got Reactium installed!
{% endhint %}

### Running Locally

Much like other popular React application creators, Reactium already has a lot of the local development environment taken care of. With a single npm script, you'll be compiling modern React javascript and Sassy CSS into a routable Node/Express application.

```bash
npm run local
```

If you did everything correctly, you will see the reactium.io website appear in an iframe.

### Remove Welcome Component

Before we go further, let's remove the **Welcome** React component.

```bash
rm -rf src/app/components/Welcome # or remove from the GUI
```

Now the root of route should just be a blank page.

### The Development Server

By default, the node/express server will listen on port **3030** and **3000** (Express and BrowserSync respectively). Your default browser should automatically open to <http://localhost:3000> for you.

### Your First Routed Hello World Component

You can manually create React components in your project, but Reactium can also help you with some common boilerplate. Let's create a simple hello world component for our homepage:

```
npx reactium component
```

![Easily set a route for a new component.](https://2573846121-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-M4poMvugQiWii-2eM1T%2F-MelLYuWFfV8nzGNnd-h%2F-Merc8LWSciCoF_rVGXB%2FFirstComponent.gif?alt=media\&token=00caaa30-9e3e-405c-ac89-6eb1610c45a3)

### Prerequisites

This page assumes you are have some familiarity with:

* Node.js and React
* npm (node package manager)
