Skip to content
Switch branches/tags
Go to file


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


A library for making games that run in both OpenGL and WebGL. There's no black box wasm trickery going on here; just good old fashioned cljc files, some macro magic, and absolutely zero social life. Every coffee shop barista near me agrees that this game library is basically the greatest one ever. Other game libraries? Total disasters! Everyone agrees. Believe me.

Getting Started

You can generate a new project with the Clojure CLI Tool:

clj -Sdeps "{:deps {leiningen/leiningen {:mvn/version \""2.9.0\""}}}" -m leiningen.core.main new play-cljc hello-world

This will start you off with a little platformer. It will contain a README with all the commands you need to use.


Companion Libraries

When you generate a new project with the command above, it'll come preconfigured with Paravim, a text editor written with play-cljc. Press Esc in dev mode to see the editor appear; see this demo.


  • Install the Clojure CLI tool
  • To run the examples in a native window on each OS:
    • clj -M:dev:linux native
    • clj -M:dev:macos native
    • clj -M:dev:windows native
  • To install the release version: clj -M:prod install


All files that originate from this project are dedicated to the public domain. I would love pull requests, and will assume that they are also dedicated to the public domain.