Workshop

here are some of my featured projects and repositories I've been currently working on.

Dead Zones on a Clock

Dead Zones on a Clock

Tracing oxygen collapse back to a cornfield

completedfeatured

Models 40 years of Gulf of Mexico hypoxic dead zone data, tracing the causal chain from Midwest agriculture to ocean oxygen collapse.

Pythonscikit-learnxarraycartopy
Thunderhead

Thunderhead

Silent observation. no captchas. no cloudflare.

activefeatured

A lightweight reverse proxy that scores incoming HTTP requests to detect and mitigate bot traffic without third-party services.

Gonet/httpRedisDocker
Lacunae

Lacunae

Reconstructing what the scanner never collected

activefeatured

A U-Net model that reconstructs diagnostically useful MRI images from undersampled k-space data, reducing scan time without sacrificing image quality.

PythonPyTorch
Terraseed

Terraseed

30 years of climate data, one planting score

activefeatured

Predicts optimal planting windows for any location on Earth using 30 years of ERA5 climate data and a composite scoring model.

PythonPlotly Dashscikit-learnxarray
Solace

Solace

Mapping where toronto burns, and what it takes to cool it

activefeatured

Urban heat island analysis pipeline built on a decade of NASA satellite data, modeling the tree canopy needed to cool Toronto neighbourhoods by 2°C.

PythonPlotly DashGDALscikit-learn
Calvin & Hobbes Quote API

Calvin & Hobbes Quote API

Philosophy from a six-year-old, on demand

completed

A Flask API serving random Calvin and Hobbes quotes as JSON, built for easy integration into projects that need a touch of whimsy.

PythonFlask

Verso

Tinder for books. Swipe right to build your shelf

activefeatured

A full-stack web app that lets you discover books through a swipe-based interface, tracking preferences by genre and preventing duplicate cards.

Next.js 15TypeScriptTailwind CSSFramer MotionClerkNeonPrismaGoogle Books API

Gaia

Cross-domain cascade failure prediction in ecological systems

activefeatured

Models multi-layered environmental dependencies—dead zones, food webs, and atmospheric drift—to predict how local structural collapses cascade across global ecological boundaries.

PythonNetworkXPyTorch GeometricxarrayGeoPandas

Precursor

If oil moves, does energy follow? quantifying the lag.

activefeatured

Investigates whether commodity momentum statistically precedes sector equity momentum using Granger causality, VAR modeling, and a signal-based backtest.

Pythonpandasstatsmodelsnetworkxyfinancematplotlibseaborn

Collatz Conjecture Explorer

Nobody has proved it. here's what it looks like

active

Interactive visualization of stopping-time landscapes for the Collatz Conjecture, with original research angles on sequence behavior.

TypeScriptReact

Custom MapReduce Engine

Hadoop is overkill. built it anyway, from scratch

active

A Python implementation of the MapReduce programming model from scratch, applied to large-scale document processing.

PythonMongoDB

Custom Redis

Redis, from scratch, in C.

completed

A ground-up implementation of a Redis-compatible in-memory key-value store written in C.

CPOSIX socketsRESP protocolMake

GNU AWK in rust

awk, rewritten in Rust, without the archaeology

active

A Rust implementation of the AWK text-processing language, rebuilding the core pattern-action model from scratch with modern memory safety guarantees.

Rust