Howegood is a very simple surf forecast aggregation app that I created for one of my favourite local surf breaks.

My inspiration for the app was fairly straightforward. Large surf forecasting apps like Surfline do a fairly good job with the raw forecast data, such as wave height/direction/period, wind speed/direction and tides. However their aggregation of that data into a location-specific ‘rating’ is pretty poor. I couldn't count the number of times that I’ve had a great surf on days that Surfline's aggregation would say ‘poor’, or the times that I've thrown my toys out of the pram on days that it would say ‘great’. They don’t really take into account the intricacies of what makes certain spots work. As a result, it takes time and requires local knowledge to dissect what a forecast is really saying.

While Howegood also shows general forecasting data, its main feature is the aggregated ‘score’. It gives a quick & accurate reflection of the surf conditions, without the user having to dig into the underlying data. It takes into account the wave height, period and direction, the wind speed and direction, and tides. Weights are applied to each data point based on their importance, whether they're within the 'ideal range' or how far from that range they are. There are also a number interdependencies between inputs that are all considered, ie. The optimal wave height changes based on the wave direction/period. The same goes for wind- a more favourable wind direction will then be more forgiving of higher wind speeds.


Using openmeteo, an open source marine weather API. Created with Next.js using Shadcn/ui for UI components and Tailwind for styling.