Skip to content
Go to file
This branch is 31 commits ahead of levand:master.

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Quantum Tic Tac Toe

For rules on the game itself, see the Wikipedia article or the original paper published in the American Journal of Physics.

This implementation is written in ClojureScript and ReactJS, and has three front-ends written using different UI libraries:

And, additionally in this fork, a port to React Native, based on the Om binding. (See the section at the bottom.)

Running the Program

Note: QTTT depends on a library, com.cognitect/contextual that may not yet be in public repositories. If not, you can install the dependency locally by cloning and running lein install in that repository.

First, compile the ClojureScript:

lein cljsbuild

Then, visit the HTML page at resources/public/dev.html.

You will need to select which UI library to view by passing a lib URL parameter. For example:

  • dev.html?lib=om
  • dev.html?lib=reagent
  • dev.html?lib=quiescent

Play proceeds in turns. There is no win condition detection, yet, but all the other rules of the game are in place.

Future Ideas

Ideas for future expansion include:

  • Win condition detection
  • Network multiplayer
  • AI

React Native Port

  1. From the top level run lein cljsbuild once ios.
  2. cd iOS/QTTT
  3. npm install
  4. pod install
  5. open QTTT.xcworkspace
  6. Run on a simulator (iPhone 6 works great)


If you'd like to connect to the iOS app using a REPL, run script/ambly-repl.


Watch a quick demo of it running on iOS:


You can’t perform that action at this time.