I'm currently learning Vulkan by building my own graphics engine! Below is an example scene rendering a spiral galaxy structure modelled with the density wave theory.

Denoising software for nuclear magnetic resonance (NMR) spectroscopy, with an interface for combining steps into a pipeline. It provides various denoising methods, including a fast implementation of Cadzow filtering, a method based on singular value decomposition from linear algebra.

A molecular dynamics simulation written using GPU compute shaders. These can run efficiently on most consumer hardware, including in browser using WebGPU. Users can interact with particles live, changing parameters like time step, heat, or even the forces between particles. Some pairwise atomic potentials are provided by default, with an API for users to add more (read the docs.)

An entity component system I wrote from the ground up in Kotlin. It lets users write fast code in a modular way by making systems that quickly iterate over entities with desired data. It uses archetypes for its architecture, and the design would allow for data to be packed tightly in memory once value objects are added to Java. It also has entity relations built into the engine, inspired by flecs.
You can see a demo in my blog post Making an efficient Minecraft particle system using ECS
A community-driven recreation of Made in Abyss in Minecraft. I did game development and server infrastructure work across several projects that help us deploy and maintain servers as a small team, here's a quick summary of my work there:

A cross-platform task and week planning app written on Jetpack Compose, with a sync server. It uses sqlite for storage, with near-instant startup times on Android, alongside a quick-add feature.

A simple tool to poll large groups of people (eg. a classroom) and display results live. A presenter can create a room, define a list of options, and have an audience join via a QR code on screen. The app is built with Ktor and HTMX, which combined made handling live updates surprisingly simple.

I've worked in Unity and Godot with C# to create games for game jams. My latest entry was Rock Bottom in Ludum Dare 46. I worked in a team of three to create a physics puzzle game using an event driven architecture.

I've designed a few websites using a custom static site generator called Shocky. It's built in Kotlin but generates plain HTML and CSS without any client-side JavaScript. These include: