<commit_before># JFlo

Extensible JSON stream processing framework with CLI and Node.js interfaces

## Quick start

```
npm install -g skydom-io/jflo
jflo --help
```

## CLI usage

### Invocation

### I/O streams

- Standard streams
    - `stdin`
    - `stdout`
    - `stderr`
- Auxiliary payload streams
    - `in.{name}`
    - `out.{name}`
    - `inout.{name}` (Duplex)
- Instrumentation streams
    - `logger`
    - `metrics`
    - `control`

#### Stream redirection
- From a file or pipe
- From a TCP socket
- To a file or pipe
- To a TCP socket
- Duplex binding

### Plug-in installation
`npm install {jflo-plugin-name}`
`jflo {plugin-name} --help` 

## Usage as a node.js library
<commit_msg>README improvements<commit_after># JFlo

Extensible JSON stream processing framework with CLI and Node.js interfaces

## Quick start

```
npm install -g skydom-io/jflo
cd {test_folder}
# git clone https://skydom-io/jflo-samples
cd jflo-samples
jflo --help
```

## CLI usage

### Invocation

### I/O streams

- Standard streams
    - `stdin`
    - `stdout`
    - `stderr`
- Auxiliary payload streams
    - `in.{name}`
    - `out.{name}`
    - `inout.{name}` (Duplex)
- Instrumentation streams
    - `logger`
    - `metrics`
    - `control`

#### Stream redirection
- From or to a file or pipe
- From or to a TCP socket
- Duplex binding

### Plug-in installation
`npm install {jflo-plugin-name}`
`jflo {plugin-name} --help` 

## Usage as a node.js library

{'fraction_non_alphanumeric': 0.13911845730027547, 'fraction_numerical': 0.0, 'mean_word_length': 2.8746666666666667, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 1, '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': '1475716', 'n_tokens_mistral': 532, 'n_tokens_neox': 503, 'n_words': 157}