# Nitro React

## Prerequisites

-   You must have [git](https://git-scm.com/) installed
-   You must have [NodeJS](https://nodejs.org/) >= 16.13 installed
-   We recommend you use [Yarn](https://yarnpkg.com/) over [npm](https://npmjs.com/)
    -   `npm i yarn -g`

## Installation

-   First you should open terminal and navigate to the folder where you want to clone Nitro
-   Clone Nitro
    -   `git clone https://git.krews.org/nitro/nitro-react.git`
-   Install the dependencies
    -   `yarn install`
    -   This may take some time, please be patient
-   Rename a few files
    -   Rename `public/renderer-config.json.example` to `public/renderer-config.json`
    -   Rename `public/ui-config.json.example` to `public/ui-config.json`
-   Set your links
    -   Open `public/renderer-config.json`
        -   Update `socket.url, asset.url, image.library.url, & hof.furni.url`
    -   Open `public/ui-config.json`
        -   Update `camera.url, thumbnails.url, url.prefix, habbopages.url`
    -   You can override any variable by passing it to `NitroConfig` in the index.html

## Usage

-   To use Nitro you need `.nitro` assets generated, see [nitro-converter](https://git.krews.org/nitro/nitro-converter) for instructions
-   See [Morningstar Websockets](https://git.krews.org/nitro/ms-websockets) for instructions on configuring websockets on your server

### Development

Run Nitro in development mode when you are editing the files, this way you can see the changes in your browser instantly

```
yarn start
```

### Production

To build a production version of Nitro just run the following command

```
yarn build:prod
```

-   A `build` folder will be generated, these are the files that must be uploaded to your webserver
-   Consult your CMS documentation for compatibility with Nitro and how to add the production files