Thoughtful ideas.
Useful things.

I’m Shaun, a product-minded developer.
I turn real-world problems into websites,
tools, and AI-powered products.

Based in Christchurch, New Zealand
From the first question to the final detail.SELECTED WORK BELOW ↓

A few things
worth a closer look.

Every project starts somewhere.
Pick one. I’ll tell you its story.

Launcher capture from the physical KY-01L.

The collection · loading the interactive view

The apps were already there.

Pocket Home Native Android

The KY-01L runs Android, but its launcher will not show or start anything you install — so a phone that could run apps effectively could not. I wrote a home screen that lets it, on a panel that punishes anything unnecessary.

What the panel asks for

Native Java in a 24 KiB APK, with no libraries and no network permission. Nothing on screen redraws unless something asked it to.

Java · Android API 25 · No dependencies

Pocket Home running on the KY-01L: favourites for WeRead, My Card, Phone, Messages, Notes and System settings.
POCKET HOME ON THE KY-01L · 480 x 600 E-INK

Correct, even offline.

Nimpression Ops Full-stack system

A dispatcher, a driver on the road and a payroll run all lean on the same records. I rebuilt this freight operations system in C# and .NET from a university capstone report, aiming for something that stays right when the network, or the rules, get difficult.

What holds it together

Clean Architecture and CQRS on .NET 10, EF Core on PostgreSQL, and SignalR used only to say what changed. Pay follows New Zealand minimum-wage rules; personal data is encrypted field by field.

C# · .NET 10 · ASP.NET Core · EF Core · PostgreSQL · Angular

nimpression.a-dobe.club
Nimpression Ops live demo captured 23 October 2026: a seeded driver payslip showing earnings, PAYE, KiwiSaver and take-home pay, marked as a demonstration calculation.

A better front door.

MRSL Client website

For a property business, the first viewing often happens online. I rebuilt MRSL’s website to make that first encounter clearer — for people looking for a home and owners looking for someone to care for one.

The quiet work behind the pages

A custom Astro front end, with Wix taking care of content. Listings, property details and enquiries belong to one considered journey.

Astro · TypeScript · Wix

mrsl.nz
MRSL live homepage captured 8 September 2026: Expert management. Personal care.

The agent follows you out.

Alma Android Open-source Android app

My AI agent runs on a Mac, and most of the moments I needed it, I was not at the Mac. So I built an Android client for it — an open-source one, made largely by the agent itself while I steered and tested on real phones.

What stays on the device

An end-to-end encrypted relay, with a direct LAN connection when phone and desktop share a network. Conversations come from your own desktop; nothing is uploaded to a server of mine.

TypeScript · React · Capacitor

Alma Android unfolded: the thread list collapsed to a navigation rail beside a conversation with a reply in progress, drawn from synthetic fixture data.
ALMA ANDROID · UNFOLDED · FIXTURE DATA

Made for a small human.

Kids Worksheets Personal product

Some products start with a business brief. This one started with my son. I wanted fresh things to learn together, with a pencil and a sheet of paper instead of another hour on a screen.

The screen is only the beginning

Maths, writing practice and AI coloring pages become printable activities. The web app does the preparation; the useful part happens away from it.

Print workflows · AI images · Web

A LITTLE PRACTICE, EVERY DAY

Let’s count
something good.

Made for curious minds.   Name: __________
3 + 2 = 4 + 1 = 2 + 6 = 5 + 3 =
A pencil. A little time. A bright idea.

ILLUSTRATIVE WORKSHEET

Something in mind?
Let’s make it real.

[email protected]

Curious about how I work?
Start a conversation.

Ask my AI terminal

A conversation with Shaun’s AI

Ask about my work, or explore with /projects.