Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/puemos/tic-tac-toe-ai

Tic-Tac-Toe AI impl javascript
https://github.com/puemos/tic-tac-toe-ai

alpha-beta-pruning alphabeta-minimax-search angularjs artificial-intelligence express mean-stack minmax-algorithm sass webpack

Last synced: 13 days ago
JSON representation

Tic-Tac-Toe AI impl javascript

Awesome Lists containing this project

README

        

### On this page

1. [Tic Tac Toe - AI](#tic-tac-toe-ai)
1. [Server](#server)
1. [Client](#client)
1. [Flow](#flow)
1. [See also](#see-also)

### Tic Tac Toe - AI

A Tic-Tac-Toe game impl Javascript/Node
Checkout the [Preview](https://tictac-toe-ai.herokuapp.com/) on Heroku
### Server

|Module|Description|
|-|-|
|Server|Lift the Express app and setup middlewares|
|Turn|Controller for the 'turn' route|
|Game|Implement functionalities|
|State|Representing a state in the game|
|Search|Using min-max with alpha-beta-pruning search the best next move|

### Client

|Module|Description|
|-|-|
|Api|Implement functionalities for http calls|
|AI|Compute the next move of the AI|
|App|The main container of the app |
|Home|The container of the root route |
|Board| Rendering tiles by a given state, updating the state |
|Tile| Rendering a single tile |

### Flow

1. The client send a state and a move to the server
2. The server compute the next move.
3. The server send back the new state.
4. The client render the UI by the new state.

### See also

External resources

* [Tic Tac Toe - tictac-toe-ai.herokuapp.com](https://tictac-toe-ai.herokuapp.com/)