A Node.js Tic-Tac-Toe game engine with alpha-beta pruning and a heuristic, packaged for npm.
npm install thaw-tic-tac-toe-engine





```
git clone https://github.com/tom-weatherhead/thaw-tic-tac-toe-engine.git
cd thaw-tic-tac-toe-engine
npm install -g grunt
npm install
grunt
``
npm install --save thaw-tic-tac-toe-engine
Note: The command "grunt" runs lint and unit tests.
`js
let engine = require('thaw-tic-tac-toe-engine');
let boardString = 'X X O ';
let maxPly = 2; // maxPly is the desired maximum depth of the best move search tree.
try {
let result = engine.findBestMove(boardString, maxPly);
console.log(result);
} catch (error) {
console.error('engine.findBestMove() threw an exception:', error);
}
`
Output:
`js``
{
bestRow: 0,
bestColumn: 1,
bestMoveList: [
{ row: 0, column: 1 }
],
bestScore: 1,
player: 'O'
}