Things I've built.
Here you can find a collection of side projects I have built for myself or others. Your mileage might vary, but you are welcome to dig in and have a play if they are useful to you.
kotlinmicronautcli
mtui is a terminal UI for creating Micronaut projects through Micronaut Launch, written in Kotlin and built with TamboUI. It puts the hundreds of available features in one searchable list, previews the generated files and unzips the project straight into the current directory. Inspired by Dan Vega's spring-initializr-tui.
kotlinmicronautwiremocktesting
Simplifies testing HTTP clients in Micronaut 5 and above. It starts WireMock servers per test class, binds their URLs into Micronaut configuration before your beans are created and injects them into your tests. The annotations mirror wiremock-spring-boot, so it should feel familiar.
wiremocktesting
A WireMock extension that adds a naughtyString Handlebars helper, so templated responses can return strings from the Big List of Naughty Strings: SQL injection, RTL text, zero-width characters, emoji and more. Works with embedded WireMock and the standalone JAR or Docker image.
kotlinmicronautclihugo
A command line tool written in Kotlin and Micronaut that converts an X/Twitter data export into Hugo markdown files, preserving the original timestamps and media. I used it to bring my old tweets over to the microblog on this site.
kotlinmicronaut
A terminal based Game of Life written in Kotlin using Micronaut and functional programming with Arrow. The universe wraps around like a torus and can be rendered in the terminal with ANSI colours or in a KorGE 2D window.
kotlinmicronautin progress
A work in progress Sinclair ZX Spectrum emulator written in Kotlin and Micronaut, starting with an emulation of the Z80 CPU.
kotlinmicronautcli
A ready to go Kotlin Micronaut command line application template with the tooling I like already set up: a Gradle version catalogue, Kotlinter and Detekt, Arrow, Strikt, and GitHub Actions and Dependabot for CI. Click "Use this template" on GitHub to start from it.
kotlinmicronauttesting
A simple Kotlin and Micronaut service that receives callbacks, useful when testing APIs locally that send them. It records every request sent to it, whatever the path or method, shows them in a live web UI and lets you set the response code and payload.
vlangcli
A terminal image viewer written in V that renders images as colourful ASCII mosaics. It scales the image to fit your terminal, corrects for the aspect ratio of terminal characters and averages the colours within each block of pixels.
hugo
A Hugo template that renders progression frameworks using the same data format as the Monzo progression framework.
kotlintesting
A Kotlin implementation of the JUnit 5 TestWatcher API that hooks your tests up to a BlinkyTape LED strip.