<commit_before># HOW? (not ready)
`systemjs-tools` ships in 3 pieces, a `client library`, a `server
library` and a `cli`. These are all provided in the npm package
`systemjs-tools`.

1. [CLI](#cli)
2. [Server](#server)
3. [Client](#client)

### General Usage
`systemjs-tools` (cli and server) upon initialization, searches upwards for
a `project root directory` (indicated by a `systemjs-tools.js` file or a `systemjs-tools`
key in your `package.json`). It then loads the relevant [config](#config),
describing your environment (eg. baseURL directory and port to serve on).

If you do not already have a config file, navigate to the directory containing
your frontend source files and run `systemjs init` **(not ready yet)**,
to create a config describing your project.

Typically one would then run a command such as `systemjs serve`, to start
up a development server.

### CLI
#### Install
```npm install --global systemjs-tools```
or
```yarn global add systemjs-tools```

#### Usage
The `cli` is a thin wrapper over the `server lib` and as such, everything
you can do in the cli, you can also do (and more) in the `server lib`.

Once installed, the `cli` is then available via the `systemjs` command.
To view available commands and usage, run `systemjs --help` (the output
of which has been included below).

```
  Usage: systemjs [options] [command]

  Commands:
    generate-config       generate SystemJS config from node_modules (using systemjs-config-builder)
    serve [options]       Serve the current directory
    new [options] <name>  Generate a minimal boilerplate for getting up and running quickly

  Options:
    -h, --help  output usage information
```

### Server
#### Install
```npm install systemjs-tools``` or ```yarn add systemjs-tools```

#### Usage
```javascript

/**
 * systemjs-tools exposes the init function which accepts as an
 * argument, an override config object, and returns a static tools
 * object representing your environment.

const { init } = require('systemjs-tools');

// initialize systemjs-tools
const tools = init({ /** your config overrides **/ })

// do some stuff
tools.serve()<commit_msg>fixed comment closing<commit_after># HOW? (not ready)
`systemjs-tools` ships in 3 pieces, a `client library`, a `server
library` and a `cli`. These are all provided in the npm package
`systemjs-tools`.

1. [CLI](#cli)
2. [Server](#server)
3. [Client](#client)

### General Usage
`systemjs-tools` (cli and server) upon initialization, searches upwards for
a `project root directory` (indicated by a `systemjs-tools.js` file or a `systemjs-tools`
key in your `package.json`). It then loads the relevant [config](#config),
describing your environment (eg. baseURL directory and port to serve on).

If you do not already have a config file, navigate to the directory containing
your frontend source files and run `systemjs init` **(not ready yet)**,
to create a config describing your project.

Typically one would then run a command such as `systemjs serve`, to start
up a development server.

### CLI
#### Install
```npm install --global systemjs-tools```
or
```yarn global add systemjs-tools```

#### Usage
The `cli` is a thin wrapper over the `server lib` and as such, everything
you can do in the cli, you can also do (and more) in the `server lib`.

Once installed, the `cli` is then available via the `systemjs` command.
To view available commands and usage, run `systemjs --help` (the output
of which has been included below).

```
  Usage: systemjs [options] [command]

  Commands:
    generate-config       generate SystemJS config from node_modules (using systemjs-config-builder)
    serve [options]       Serve the current directory
    new [options] <name>  Generate a minimal boilerplate for getting up and running quickly

  Options:
    -h, --help  output usage information
```

### Server
#### Install
```npm install systemjs-tools``` or ```yarn add systemjs-tools```

#### Usage
```javascript

/**
 * systemjs-tools exposes the init function which accepts as an
 * argument, an override config object, and returns a static tools
 * object representing your environment.
 */

const { init } = require('systemjs-tools');

// initialize systemjs-tools
const tools = init({ /** your config overrides **/ })

// do some stuff
tools.serve()
{'fraction_non_alphanumeric': 0.11059262715818946, 'fraction_numerical': 0.0018665422305179655, 'mean_word_length': 4.2536764705882355, 'pattern_counts': {'":': 0, '<': 5, '<?xml version=': 0, '>': 5, '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': '1138828', 'n_tokens_mistral': 1225, 'n_tokens_neox': 1160, 'n_words': 567}