<commit_before>## Github Marketing

You can help out the project by just ★ starring this repository from the upper right corner and also pinning it to your profile.

## Getting Started

It's very easy to set-up a local server in order to test and contribute to the development version of this game project.  
It uses web languages like HTML, CSS, Javascript and Node.js. The game engine used is free open source, [Phaser](https://phaser.io).
Nowadays you can skip setting up a local server and just start developing on the project right away: [![Open in Gitpod](https://img.shields.io/badge/setup-automated-blue?logo=gitpod)](https://gitpod.io/#https://github.com/FreezingMoon/AncientBeast)

### Recommended Tool

If you're not very keen on using a browser based IDE, I highly recommend using [Visual Studio Code](https://code.visualstudio.com/download), for cloning the project and creating patches. [VSC](https://code.visualstudio.com/download) is free, open source, cross platform, and has nice git integration and useful extensions.

### Fork Project

You can create a clone of the project by using git from the CLI or with the use of a tool like the one recommended above.

```sh
git clone https://github.com/FreezingMoon/AncientBeast.git
```

In [VSC](https://code.visualstudio.com/download) you can press `Ctrl + Shift + P`, search for `Git: Clone` and then input [just the link](https://github.com/FreezingMoon/AncientBeast.git) in the given field.

---

### Package Requirements

First install (or make sure you have) the latest LTS version of [Node.js](https://nodejs.org). In case you need to have different versions of it for other projects as well, you should definitely use `nvm` (Node version manager), which is a tool that makes it easy to manage multiple local Node installations. You can [find installation instructions here](https://github.com/nvm-sh/nvm#install--update-script), and then use it like:

```sh
nvm install --lts  # This will always install the latest LTS release.
nvm use --lts  # Use latest LTS now.
nvm alias default  # Make latest LTS your default.
```

`LTS` stands for `Long Term Support`, meaning it's a rather stable and hopefully non-problematic version.

### Installing Dependencies

In the terminal (`Ctrl + ~` in [VCS](https://code.visualstudio.com/download)), use the following command in order to easily install all the project dependencies:

```sh
npm install
```

This will read `package.json` and install all of the gameplay established npm package dependencies.  
The `npm install` command will also update any required dependencies if the `package.json` file changes. If you have not worked on the project in a while, make sure you update your fork and also run that command again, which will also compile the project, same as the `npm run build:dev` command.

### Setup environment variables

If you want to customize your local setup, duplicate existing `.env.example` file as `.env`, adjust it as you want and that file will become default.

```sh
cp .env.example .env
```

### Compile Project

In order to build the development version of the game (also done by `npm install`), run the following command:

```sh
npm run build:dev
```

If you receive errors about the manifest or assets loading, try running `npm run assetLister` to create a list for the app.

### Docker setup

First, be sure to have Docker installed, then build the image with the following command `docker build -t yourusername/ancient-beast .`.

To run the image, try running `docker run -p80:8383 yourusername/ancient-beast`.

### Beta Testing

To have the game up and running on your local machine, simply run this command in the terminal:

```sh
npm run start
```
<commit_msg>docker port suggestion<commit_after>## Github Marketing

You can help out the project by just ★ starring this repository from the upper right corner and also pinning it to your profile.

## Getting Started

It's very easy to set-up a local server in order to test and contribute to the development version of this game project.  
It uses web languages like HTML, CSS, Javascript and Node.js. The game engine used is free open source, [Phaser](https://phaser.io).
Nowadays you can skip setting up a local server and just start developing on the project right away: [![Open in Gitpod](https://img.shields.io/badge/setup-automated-blue?logo=gitpod)](https://gitpod.io/#https://github.com/FreezingMoon/AncientBeast)

### Recommended Tool

If you're not very keen on using a browser based IDE, I highly recommend using [Visual Studio Code](https://code.visualstudio.com/download), for cloning the project and creating patches. [VSC](https://code.visualstudio.com/download) is free, open source, cross platform, and has nice git integration and useful extensions.

### Fork Project

You can create a clone of the project by using git from the CLI or with the use of a tool like the one recommended above.

```sh
git clone https://github.com/FreezingMoon/AncientBeast.git
```

In [VSC](https://code.visualstudio.com/download) you can press `Ctrl + Shift + P`, search for `Git: Clone` and then input [just the link](https://github.com/FreezingMoon/AncientBeast.git) in the given field.

---

### Package Requirements

First install (or make sure you have) the latest LTS version of [Node.js](https://nodejs.org). In case you need to have different versions of it for other projects as well, you should definitely use `nvm` (Node version manager), which is a tool that makes it easy to manage multiple local Node installations. You can [find installation instructions here](https://github.com/nvm-sh/nvm#install--update-script), and then use it like:

```sh
nvm install --lts  # This will always install the latest LTS release.
nvm use --lts  # Use latest LTS now.
nvm alias default  # Make latest LTS your default.
```

`LTS` stands for `Long Term Support`, meaning it's a rather stable and hopefully non-problematic version.

### Installing Dependencies

In the terminal (`Ctrl + ~` in [VCS](https://code.visualstudio.com/download)), use the following command in order to easily install all the project dependencies:

```sh
npm install
```

This will read `package.json` and install all of the gameplay established npm package dependencies.  
The `npm install` command will also update any required dependencies if the `package.json` file changes. If you have not worked on the project in a while, make sure you update your fork and also run that command again, which will also compile the project, same as the `npm run build:dev` command.

### Setup environment variables

If you want to customize your local setup, duplicate existing `.env.example` file as `.env`, adjust it as you want and that file will become default.

```sh
cp .env.example .env
```

### Compile Project

In order to build the development version of the game (also done by `npm install`), run the following command:

```sh
npm run build:dev
```

If you receive errors about the manifest or assets loading, try running `npm run assetLister` to create a list for the app.

### Docker Setup

First, be sure to have Docker installed, then build the image with the following command `docker build -t yourusername/ancient-beast .`.

To run the image, try running `docker run -p80:8383 yourusername/ancient-beast`. If there's something running on port 80, try next port.

### Beta Testing

To have the game up and running on your local machine, simply run this command in the terminal:

```sh
npm run start
```

{'fraction_non_alphanumeric': 0.08602006688963211, 'fraction_numerical': 0.0018729096989966556, 'mean_word_length': 4.37841726618705, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 24, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 8, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1822238', 'n_tokens_mistral': 2090, 'n_tokens_neox': 1973, 'n_words': 1042}