Software
A collection of projects I've built or maintain. Source code for most of these lives on GitHub. You can find more of my projects on my repositories page.
Open-Source Science Software
- zarr-dump
A command-line tool for summarising the structure and contents of Zarr stores, useful for quickly inspecting large chunked array datasets.
Python Zarr CLI - Dask Cluster Setup
A reproducible configuration and setup guide for running distributed Dask workloads, including worker scaling, scheduler configuration, and environment bootstrapping.
Python Dask Distributed Computing
Research Software
- Feilian-3D
A 3-D generative model framework built for reproducible training runs on HPC clusters. Includes a custom data pipeline, configurable loss functions, Slurm integration, and full API documentation.
Python Deep Learning Slurm HPC - sea_breeze
A Python library for detecting and analysing sea breeze events in atmospheric model output and observational data.
Python Meteorology Climate - FrontDetection
A Python module for detecting weather fronts in xarray datasets, designed for use with gridded atmospheric model output.
Python xarray Meteorology - Atmosphere-Cookbook
A cookbook of recipes for analysing atmospheric model output, covering common workflows for climate and weather data processing.
Python Climate Tutorial - CNN-Atmospheric-Rivers
A convolutional neural network for detecting atmospheric rivers in climate model output.
Python Deep Learning Climate
Games & Apps
Nothing here yet.
Hardware & Embedded
- ClimTime
A MicroPython weather visualiser for an LED matrix. Maps temperature to colour, wind speed to waveform height, and precipitation to animated effects — all driven by live sensor data.
MicroPython LED Matrix IoT - Galactic Moon
A moon-position tracker that computes azimuth and altitude entirely on-device — no external API. Displays the moon's current sky position on an LED matrix using local astronomical math.
MicroPython Astronomy LED Matrix