Skip to content

Projects

Production work, side projects, and the tradeoffs behind them.

Hone.gg

Hone.gg Platform Tools

Windows tools for gaming PCs.

Problem

Hone tunes Windows PCs for games. The work touches refresh rates, game settings, GPU drivers, network config, startup apps, backups, and installed software. Each tool has to survive messy hardware and driver states.

Build

Built tools across the optimization flow: refresh rate maximizer, game settings presets, GPU driver installer with safe mode handling, PC benchmark scoring, network tests for bufferbloat, TCP, UDP, ping, and bandwidth, plus game finder, app manager, backup manager, and startup manager. Shipped a C# and NSIS installer through independent and Epic Games distribution.

Notes

  • Windows platform work
  • Tools that handle uneven hardware
C# NSIS Windows API Epic Games

Hone.gg

Product Analytics & Team Infrastructure

Analytics and team tooling for a small product team.

Problem

The team needed product analytics people could trust and a workflow that did not bury shipping work under notes.

Build

Set up Mixpanel tracking for product health and user behavior. Moved project management from Notion to Linear. Started team communication in Discord, then moved the team to Slack and handled onboarding.

Notes

  • Product analytics
  • Tool migration
Mixpanel Linear Slack Codex

Side project

Thai Alphabet Learning Quiz

Thai script practice built for my own study.

Problem

I moved to Thailand and needed to learn the writing system. The resources I found missed pieces or made practice annoying.

Build

Built a consonant and vowel reference with tone rules, mnemonics, and a multi-mode quiz. React and TypeScript handle the interaction.

Notes

  • Tools for personal problems
  • Complete interactive products
React TypeScript
Open project →

This website

jonathanhoule.ca

The site you are reading.

Problem

A personal site has one job: load fast, show the work, and avoid template energy.

Build

Astro 7, React islands, Tailwind 4, and Cloudflare Pages. Static pages inline CSS for first paint. The contact form and Thai quiz hydrate as isolated React islands. The stack uses oklch colors with fallbacks, preloaded variable fonts, Turnstile, Resend, honeypot fields, and a time trap.

Notes

  • Performance tuning
  • Static-first Astro 7
Astro 7 React 19 Tailwind 4 Cloudflare Pages