In this post I'll give updates about open source I worked on during May and June 2022.
If you want to ensure that the projects I work on are sustainably maintained, you can sponsor this work via the following organizations:
Turn Clojure functions into CLIs!
This is one of my newest projects. It aims to close the gap between good command line UX and calling Clojure functions. It is very much inspired by the clojure CLI, but solves a problem which sometimes causes frustration, especially among Windows users: having to use quotes in a shell. It also offers support for subcommands. One project benefiting from that is neil. I blogged about babashka CLI here.
Serve static assets.
Another new project is http-server, which can be used in Clojure JVM and babashka to serve static assets in an http server.
In June I had the honor and pleasure to give a workshop about clj-kondo at ClojureD. You can work through the material yourself if you'd like here. Feel free to join the clj-kondo channel on Clojurians Slack for questions. Here are some pictures from the event.
CLI to transform between JSON, EDN and Transit, powered with a minimal query language.
Quickdoc is a tool to generate documentation from namespace/var analysis done by clj-kondo. It's fast and spits out an
API.md file in the root of your project, so you can immediately view it on Github. It has undergone significant improvements in the last two months. I'm using quickdoc myself in several projects.
Scripting in Clojure on Node.js using SCI.
cljs.math, nREPL improvements and now has significant faster startup due to an improvement in SCI.
Clojure/Script Language Server (LSP) implementation.
This project is driven by the static analysis done by clj-kondo and used by many people to get IDE-like features in editors like emacs and VSCode.
I added support for Apple Silicon using Cirrus CI.
Native, fast starting Clojure interpreter for scripting.
Two new version of babashka were released:
0.8.2 and 0.8.156. The last segment of the version number now indicates the release count, so the last release is the 156th release.
A linter for Clojure code that sparks joy.
Clj-kondo now also has a new Apple Silicon binary built on Cirrus CI.
Configurable Clojure interpreter suitable for scripting and Clojure DSLs. Powering babashka, nbb, joyride and many other projects.
New releases: 0.3.5 - 0.3.32
sci.asyncnamespace for asynchronous loading of code
A collection of ready to be used SCI configurations.
This project contains configurations for reagent, promesa, etc. and are used in nbb, clerk and other projects.
A recent addition was a configuration for
cljs.test which is now shared by nbb and joyride.
New releases: 0.1.2 - 0.1.4
exec call in GraalVM
native-images - this means you can replace the current process with another one.
The Small Clojure Interpreter exposed for usage in browser script tags.
Added support developing CLJS via nREPL. See docs.
Pure Clojure Webdriver protocol implementation.
Brief mentions of miscellaneous other projects I worked on:
Discuss this post here.