OSTINATO - A chess library that runs on the server (Scala), on the browser (ScalaJS) and on the REPL