Eddie Chow

Projects

Things I've built

Each one started as a problem in my own week. Here's what they do, why they exist and what's under the hood.

ㄅ

Zhuyin Trainer

  • Language
  • Flashcards
  • Add to home screen

What it does

Teaches the zhuyin (bopomofo) alphabet with spaced-repetition flashcards, drills for the sounds that pinyin readers tend to mix up, and a tone reader that says each syllable out loud.

Why I built it

I learned pinyin first, so the zhuyin symbols kept tripping me up in exactly the places where the two systems differ. I wanted practice aimed at those traps instead of a generic deck.

How it works

A single HTML file with no server. It keeps your progress in the browser and can be added to your phone's home screen like an app.

D

Dinner Plan

  • Home
  • Meal planning
  • Groceries

What it does

A weekly meal board for the household. Drag a meal onto a day and its ingredients land on the grocery list, added up and grouped by store and aisle so the shop goes in order.

Why I built it

Planning dinners and writing the shopping list were two separate chores that kept drifting apart. Now the list is built straight from the plan, so it's always right.

How it works

React and TypeScript, built with Vite, with drag and drop for the board. Supabase holds the shared data and handles sign-in so everyone in the house sees the same week. Hosted on Cloudflare.

C

Course Studio

  • Learning
  • YouTube
  • Courses

What it does

Turns a YouTube playlist into a self-paced course. Every video becomes a lesson with a warm-up from earlier lessons, objectives, key terms, key ideas linked to timestamps, questions to check your understanding, practice and a reflection.

Why I built it

Great lectures on YouTube are easy to watch and easy to forget. I wanted the structure of a real course around them, built on how adults actually learn.

How it works

A small Python studio app pulls each video's transcript and helps write the chapters with Claude. The finished course is published to Cloudflare Pages, with a lesson chat powered by Cloudflare Workers AI.

L

Loaf Math

  • Baking
  • Calculator
  • Scheduling

What it does

A sourdough calculator. Set how many loaves you want and every weight scales. Pin the one moment you know, like when you need bread out of the oven, and the three-day schedule arranges itself around it.

Why I built it

Sourdough is mostly arithmetic and timing, and I kept doing both on scraps of paper. This does the maths and tells me when to feed the starter.

How it works

One HTML page with no server. Weights scale from a four-loaf base recipe and it shows baker's percentages alongside the grams.

來

Laixue

  • Language
  • Textbook
  • Flashcards

What it does

An interactive study library for the 來學華語 (Let's Learn Mandarin) textbooks. Each lesson has its vocabulary with zhuyin and pinyin, the dialogue, grammar drills, fill-in-the-blank practice and spaced-repetition review.

Why I built it

I'm learning from these textbooks and wanted to study each lesson on my phone, with flashcards that know which words I keep missing.

How it works

Plain JavaScript with no framework. Each lesson is transcribed into a JSON file and a build step adds zhuyin and example sentences. Progress lives in the browser, and a sync code keeps devices in step through a small Cloudflare Worker.

K

Site to Kindle

  • Reading
  • Kindle
  • Share sheet

What it does

Send any article to my Kindle. It strips the page down to the words and pictures, turns it into a clean ebook and emails it to the device. I can paste a link, click a bookmarklet or share straight from Safari on my phone.

Why I built it

Long reads are much nicer on e-ink than on a screen, but most sites are cluttered with ads and pop-ups. I wanted the send-to-Kindle feature that read-later apps like Readwise Reader have, in a small tool of my own.

How it works

A TypeScript Cloudflare Worker. Mozilla's Readability pulls out the article, the Worker downloads its images and packages everything as an EPUB, and Resend emails it to my Kindle address. A password keeps it to just me.