andrew.bloyce / docs
v3.4.0

Case study · Redesign

A faithful modern rebuild of GEMFIND — my uncle-in-law Michael Paine's 1997 Windows program that mapped Australia's gemstone fossicking spots. Same data, same idea, better cartography.

Year
2026
Role
Solo — design & build
Stack
MapLibre · Web Components · Vite · Python
Status
Personal project · live

01 The brief

In 1997, my uncle-in-law Michael Paine wrote GEMFIND — a Visual Basic 3 shareware program that plotted Australia's gemstone fossicking spots on a scalable map of the country. It ran on Windows 3.1, shipped as a ~500 KB self-extracting executable, and drew its data from a 1987 reference book. I wanted to bring it back: the same data and the same idea, but with modern cartography and honest attribution. A tribute, not a replacement.

02 What I made

Gemfind is a modern web app that plots the same localities Michael compiled (34 gemstone types, 316 localities, 634 gemstone-to-locality cross-references) on a real basemap, with the bidirectional gemstone↔town filter the original was built around. The design stays quiet on purpose: cartography is the loudest thing on screen. Underneath sits a Python pipeline that rescued, cleaned, and geocoded the 1997 data, and the dataset is open to download.

03 Highlights

Before and after

The starkest part of the project is the jump: a grey Windows 3.1 window with a black-outline map becomes a clean, content-first web app on a real basemap. Same information, thirty years of design and tooling later. The redesign was the point.

Honouring the original

Faithfulness mattered more than tidiness. I kept the bidirectional gemstone↔town filter that made the original tick, and translated Michael's iconic multicoloured concentric circles (richness at a site) into modern petal clusters. Five gemstones with zero records still appear, greyed out, because they were in the original table. I didn't add anything that wasn't there, and I didn't drop anything without flagging it.

Data & provenance

Behind the map is a Python pipeline that rescued the 1997 Access/Excel data, cleaned it (every spelling fix and merge logged), and geocoded it against GeoNames, while keeping Michael's original coordinate grid as a sanity check. Provenance is treated as a feature: the 1997 screenshots, the original installer, and the cleaned JSON are all there to download.

Honest attribution

Same data. Same idea. Better cartography. The about page credits Michael in full and frames the site as an unaffiliated tribute, with the history shown openly as part of the design.

04 What it looked like

Thirty years apart — the same map of Australia.

The 1997 GEMFIND program: a grey Windows 3.1 window titled 'Map of Australia - Gemstone Locations', with a black-outline map dotted with small circles and Opt, Plot and Quit buttons.
Before: Visual Basic 3 on Windows 3.1, 1997.
The 2026 Gemfind web app: a GEMFIND wordmark, a left sidebar listing gemstones grouped by family with counts, and a modern basemap of Australia with colourful clustered markers.
After: the 2026 rebuild, on a real basemap.
Gemfind filtered to sapphire and ruby, showing only those localities plotted on the map.
Filter by gemstone: sapphire and ruby.

05 What I learned

The real lesson here was about working with AI. I designed and built the whole project in a single morning at a café, entirely with Claude Code: the data pipeline, the cartography, and the front end. I'm happy to be upfront about that. Typing the code isn't the hard part anymore. The judgement is, knowing what to ask for and what to throw away. Taste is the part that doesn't commoditise.