<commit_before># sudoku-hint-machine

This is a sudoku hint generator done completely client-side in
javascript. The UI is built using
[React](http://facebook.github.io/react/).

React
-------
To install the React JSX transformer:

    npm install -g react-tools


Testing
-------
Tests are  written in [Jasmine](http://jasmine.github.io/).
You can install [Jasmine in several ways](https://github.com/jasmine/jasmine#installation).

To run the tests:

    mkdir spec/jasmine

[Download this version of it](https://github.com/jasmine/jasmine/releases/download/v2.3.4/jasmine-standalone-2.3.4.zip) and save it to the above directory.

    unzip jasmine-standalone-2.3.4.zip

Then just open the file spec/SpecRunner.html in a browser.
<commit_msg>Modify Jasmine installation instructions<commit_after># sudoku-hint-machine

This is a sudoku hint generator done completely client-side in
javascript. The UI is built using
[React](http://facebook.github.io/react/).

React
-------
To install the React JSX transformer:

    npm install -g react-tools


Testing
-------
Tests are  written in [Jasmine](http://jasmine.github.io/).
You can install [Jasmine in several ways](https://github.com/jasmine/jasmine#installation).

The SpecRunner expects jasmine files to be at spec/jasmine. To run the tests:

    mkdir spec/jasmine

    [Download this version of it](https://github.com/jasmine/jasmine/releases/download/v2.3.4/jasmine-standalone-2.3.4.zip) and save it to the above directory.

    unzip jasmine-standalone-2.3.4.zip

    Then just open the file spec/SpecRunner.html in a browser.

{'fraction_non_alphanumeric': 0.11735015772870662, 'fraction_numerical': 0.011356466876971609, 'mean_word_length': 3.5706051873198845, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 4, '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': '274970', 'n_tokens_mistral': 524, 'n_tokens_neox': 488, 'n_words': 156}