Where Burin Choomnuan publishes open source. Mostly Clojure and ClojureScript, with a run of Jolt work alongside it. Each library or tool gets used first and written up after.
b12nis a numeronym forburinchoomnuan: the first letter, the twelve in between, then the last. The same trick asi18nandk8s.
| project | what it is |
|---|---|
| champaca | A Java runtime inside Jolt, rebuilt from Anthony Green's OpenLDK. Bytecode becomes Chez Scheme the first time a method runs, so Jolt calls Java libraries in-process with no JVM. Experimental. Docs |
| jonquil | A DrRacket-style Clojure IDE written in Jolt, porting the idea of DrClojure: a Definitions editor, an Interactions console, and a Stop that really stops. It runs Jolt in or out of process and attaches to JVM Clojure, ClojureScript, ClojureDart, jank and other nREPL servers such as babashka, some of them still experimental. Agents can drive it over MCP. Alpha. Site |
| mcp-tkx | A Clojure and ClojureScript library for building Model Context Protocol clients and servers. Five protocol revisions, dual-era sessions, and it runs on the JVM, Node and Babashka. Docs |
raylib in jank and JVM Clojure, 5 repos: bindings, 326 examples and raygui
| project | what it is |
|---|---|
| raylib-jnk | raylib in jank, calling it directly through jank's C++ interop, and the guide to how the examples are written. Docs |
| raylib-jank-demo | 213 raylib examples in jank, 212 of them ports of raylib's official examples, each its own runnable project. Gallery |
| raylib-clj | raylib bindings for JVM Clojure over coffi and JDK 22+'s Panama Foreign Function & Memory API. Docs |
| raylib-clj-demo | 113 raylib examples in JVM Clojure, each its own runnable project. Gallery |
| raygui-jnk | 24 raygui examples in jank: native Clojure compiled via C++/LLVM, with raygui built as an ordinary jank package. Docs |
One program, four runtimes, 2 repos: Pac-Man and lisp-games in babashka, JVM Clojure, jank and Jolt
| project | what it is |
|---|---|
| raylib-pacman | One Pac-Man written four times, in babashka, JVM Clojure, jank and Jolt, with nothing shared between them, so each FFI's limits read side by side. Docs |
| lisp-games | Small graphical programs across the same four runtimes, with compute and draw timed separately. Docs |
AWS Lambda, seven ways, 7 repos: Jolt, jank, Glojure, ClojureScript (shadow-cljs and Clojurific), Rust through Jolt, and Babashka
The same demo handler on every runtime, each with a bench task for cold and warm boot times against your own AWS account. The comparison puts their numbers side by side.
| project | what it is |
|---|---|
| lambda-mvp-jlt | A Lambda custom runtime in Jolt (native Clojure on Chez Scheme), with the Runtime API loop written in Clojure. Docs |
| lambda-mvp-jnk | The same Lambda demo in jank (native Clojure compiled to native code via C++/Clang/LLVM), deployed as a container image. Docs |
| lambda-mvp-glj | A custom runtime in Glojure (Clojure hosted on Go), AOT-compiled to one static binary that cold-starts in about 100 ms and runs in 28 MB. Docs |
| lambda-mvp-cljs | The same demo in ClojureScript on AWS's managed Node runtime, built with shadow-cljs. Docs |
| lambda-mvp-cljrfc | The cljs demo compiled by Clojurific to ES modules and bundled by Vite instead, so the two compare compilers and nothing else. Docs |
| lambda-mvp-rst | The Jolt runtime again, with its JSON response built by Rust through jolt-diplomat. Docs |
| lambda-mvp-bb | The same demo in Babashka via blambda, the only one of the seven shipped as a Lambda Layer. Docs |
The homepage
| project | what it is |
|---|---|
| b12n-oss.github.io | The organization homepage, one hand-written file with no build step. |
Only public repositories are listed. Some work stays private until it's ready to show, and it joins this table when it goes public.
Every project above with a docs link publishes through
jlt-commons/docs-engine, so none of them
carries a site generator of its own. You write markdown plus a short config file, and
each site lands at b12n-oss.github.io/<repo>/. That's sixteen sites today. The
largest are champaca and
mcp-tkx, at fourteen pages each, and the raylib
galleries show every example with its recording.
github.com/burinc is the personal account, and the longer story of what all of this is for. Writing and notes that did not fit in a repository go to b12n.net.