<commit_before>## Getting Started

Hokusai aims to provide a smooth CI workflow on a per-project basis.  As such, it is designed to be configured and run from a shell within a project's git repo.

We will assume you have already installed Hokusai and run `hokusai configure`, as detailed in [Setup](../README.md#Setup).

1) Setup Hokusai for a Rails project

```bash
cd ./path/to/my/rails/project/git/repo
hokusai setup --project-type ruby-rails
```

`hokusai setup` will create:
- A `Dockerfile` in your project root
- A configuration folder `./hokusai`.  This folder contains:
  * `config.yml` - Hokusai project configuration
  * `common.yml` - a Docker Compose YAML file imported by `development.yml` and `test.yml`
  * `development.yml`- a Docker Compose YAML file for the development environment
  * `test.yml` - a Docker Compose YAML file for the test environment
  * `staging.yml` - a Kubernetes YAML file for the staging environment
  * `production.yml` - a Kubernetes YAML file for the production environment
- An ECR repository for your project

The files in `./hokusai` as well as the `Dockerfile` are meant to be a starting point for development of your specific application's dependencies, and can / should be freely modified, as you customize your Docker build, add service dependencies to your environments, introduce environment variables, or change the container runtime commands.  See [Configuration Options](./Configuration_Options.md) if you want to modify your project's configuration.

2) Check that Hokusai is correctly configured for your project

`hokusai check` will run a series of tests and warn you if it finds anything improperly configured.

3) Run the development environment
<commit_msg>add alternate project types<commit_after>## Getting Started

Hokusai aims to provide a smooth CI workflow on a per-project basis.  As such, it is designed to be configured and run from a shell within a project's git repo.

We will assume you have already installed Hokusai and run `hokusai configure`, as detailed in [Setup](../README.md#Setup).

1) Setup Hokusai for a Rails project

```bash
cd ./path/to/my/rails/project/git/repo
hokusai setup --project-type ruby-rails
```

(Other currently supported project types include `ruby-rack`, `nodejs`, `elixir` and `python-wsgi`.)

`hokusai setup` will create:
- A `Dockerfile` in your project root
- A configuration folder `./hokusai`.  This folder contains:
  * `config.yml` - Hokusai project configuration
  * `common.yml` - a Docker Compose YAML file imported by `development.yml` and `test.yml`
  * `development.yml`- a Docker Compose YAML file for the development environment
  * `test.yml` - a Docker Compose YAML file for the test environment
  * `staging.yml` - a Kubernetes YAML file for the staging environment
  * `production.yml` - a Kubernetes YAML file for the production environment
- An ECR repository for your project

The files in `./hokusai` as well as the `Dockerfile` are meant to be a starting point for development of your specific application's dependencies, and can / should be freely modified, as you customize your Docker build, add service dependencies to your environments, introduce environment variables, or change the container runtime commands.  See [Configuration Options](./Configuration_Options.md) if you want to modify your project's configuration.

2) Check that Hokusai is correctly configured for your project

`hokusai check` will run a series of tests and warn you if it finds anything improperly configured.

3) Run the development environment

{'fraction_non_alphanumeric': 0.07170978627671541, 'fraction_numerical': 0.001687289088863892, 'mean_word_length': 4.38124054462935, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '81487', 'n_tokens_mistral': 1016, 'n_tokens_neox': 938, 'n_words': 478}