<commit_before># BEST

Implementation of the BEST architectural pattern, a.k.a.:

> A balanced architecture for module-oriented, stateful-and-functional applications

## Overview

**BEST** stands for _Behavior - Event - State - Tree_.

* The _tree_ declares the scene graph
* _Events_ react to UI/program actions, and mutate state
* _States_ encapsulate statefulness
* _Behaviors_ are pure functions that react to state changes

## Development

Clone the `ecosystem` repo first:

    $ git clone <EMAIL>:framework/ecosystem.git
    $ cd ecosystem && npm i && npm link

Now clone the main (`best`) repo into a separate folder:

    $ git clone <EMAIL>:framework/best.git
    $ cd best && npm i && npm link best-ecosystem

From the main BEST project, start up the development server:

    $ npm run develop

Open [localhost:1337](http://localhost:1337) in your browser.

Edit `public/index.html` to change the deployed component.

### Developing components

To create a component, or modify an existing one, use the `ecosystem` repo.

You will need security credentials to make changes. Contact one of the developers.

As you save edits, your changes will be synchronized with Hub.

Be careful when editing components that are not in your namespace folder!

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md).

## Authors

* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)

## Copyright
<commit_msg>Update the README<commit_after># BEST

Implementation of the BEST architectural pattern, a.k.a.:

> A balanced architecture for module-oriented, stateful-and-functional applications

## Overview

**BEST** stands for _Behavior - Event - State - Tree_.

* The _tree_ declares the scene graph
* _Events_ react to UI/program actions, and mutate state
* _States_ encapsulate statefulness
* _Behaviors_ are pure functions that react to state changes

## Development

Clone the `ecosystem` repo first:

    $ git clone <EMAIL>:framework/ecosystem.git
    $ cd ecosystem && npm i && npm link

Now clone the main (`best`) repo into a separate folder:

    $ git clone <EMAIL>:framework/best.git
    $ cd best && npm i && npm link best-ecosystem

From the main BEST project, start up the development server:

    $ npm run develop

Open [localhost:1337](http://localhost:1337) in your browser.

Edit `public/index.html` to change the deployed component.

### Developing components

To create a component, or modify an existing one, use the `ecosystem` repo.

By default, your components will be synchronized/served via the `public/best-ecosystem` folder.

But to synchronize/serve from the remote storage (Hub) ...

### Publishing components

When using the command line tools, prefix commands with `ECOSYSTEM_ENV=production`.

E.g. `$ ECOSYSTEM_ENV=production npm run sync-all`.

You will need security credentials to make changes. Contact one of the developers.

Be careful when editing components that are not in your namespace folder!

## Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md).

## Authors

* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)
* [<NAME>](mailto:<EMAIL>)

## Copyright

{'fraction_non_alphanumeric': 0.1053770086526576, 'fraction_numerical': 0.004944375772558714, 'mean_word_length': 4.477157360406092, 'pattern_counts': {'":': 0, '<': 27, '<?xml version=': 0, '>': 29, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 4, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5719811', 'n_tokens_mistral': 998, 'n_tokens_neox': 952, 'n_words': 369}