Projects

Here you will find a list of personal and open-source projects that I have worked on over the years.

Avy

Avy icon

Avy is an open-source mobile application for avalanche forecasts created by the Northwest Avalanche Centre (NWAC). I have been volunteering for NWAC, helping them maintain the app. The app provides avalanche forecasts and weather data from various avalanche centers in the US. It is used by thousands of people for backcountry skiing and other winter activities.

The app is built on React Native and targets Android and iOS.

Dry Rock

Dry rock screenshot

Dry Rock is an open source weather website for rock climbers. The main problem it is trying to solve is “where should I go climbing this weekend”?

With rock climbing, as with any outdoor activity, the weather plays a crucial roll. This often led me to checking the forecast for multiple different places, trying to compare them to each other and figure out where was going to have the best weather. Thus Dry Rock was born!

It is designed for high information density so that you can quickly figure out where the best weather to go climbing is with the least amount of effort. It is also specifically designed to work well on mobile devices because that is often how I end up using it.

It is built with Python which renders static HTML pages that are then served using GitHub Pages. Created and maintained by me.

Rust Ray Tracer

RS ray tracer render

This is a passion project to build a ray tracing engine from scratch.

I’ve always been interested 3D graphics, mostly thanks to video games but I became interested in ray tracing in particular when I took a module all about the math behind it in college. To me it was a fun blend of math, physics, and computers, all of which I am very interested in.

Later when I was learning Rust (a new programming language) I was looking for a good compute intensive project to test my skills and ray tracing seemed like a good candidate.

It’s based on the ‘Ray tracing in one weekend’ book series, which takes you through how to build a simple ray tracing engine from scratch in C++, though my project was all written in Rust. It runs on the CPU so it is not very fast, but given enough time it can produce some cool images.

Met Norway Location Forecast

An open-source Python library for interfacing with MET Norway’s Locationforecast/2.0 service. Created and maintained by me. Officially recommended by Met Norway.

Hexagonal Path Finding Visualiser

Hexagonal path finding visualiser demo image

This project is a visual representation of various path finding algorithms on a hexagonal grid. I built this as a tool to help me understand how path finding algorithms work.