Skip to main content
Hobby Project

GorGai

A free web app for learning to read and write the Thai alphabet.

GorGai interface
Year
2026
Status
Live, free, and actively maintained
Built with
Astro, Vanilla JavaScript, Canvas API, Vercel

Why it exists

I wanted to read Thai. Not the taxi-and-restaurant survival kit, the actual reading: the menu without pictures, the sign that is not also in English.

Everyone gives the same advice. Start with the alphabet, write it out by hand, let repetition do the rest. So I found a worksheet PDF, printed it, and traced letters until the page was full. Then I printed another one.

Somewhere in there I noticed the problem. I had no idea whether any of it was right. My ฐ looked like my ฎ. Both looked like a small bird that had given up. There was nothing to check against and nobody sitting next to me to ask, so I was practising being wrong, very neatly, in pen.

That is a solvable problem, and it is solvable with a canvas and a guide layer. So I built the thing I wanted instead of printing a third worksheet.

What it does

Three modes, not one

Trace over a semi-transparent guide, write the letter from memory and check yourself, or read it cold and try to recall the sound. Those are three different stages of knowing a letter, and worksheets only ever cover the first.

All 44 consonants and 32 vowel forms

Plus tone classes colour coded, a full alphabet chart, the tone rules, and word-reading flashcards for when individual letters stop being the hard part.

Practise only what you keep getting wrong

Filter the set down to the eight letters you always mix up. That is where most of the value sits once you are a couple of weeks in.

Works on a phone, with no download

Fifteen minutes a day beats two hours on a Sunday for memorisation, and fifteen minutes a day realistically happens on a phone, standing up, somewhere inconvenient.

How it actually works

Every section runs the same three stages, because knowing a letter well enough to trace it, to write it blind, and to recognise it in the wild are three different things.

Practice mode

Learn: trace it until your hand knows the shape

A faint guide character sits on the canvas and you draw straight over it, with a finger, a stylus or a mouse. This is the stage where you do not yet know the letter, and it is the only stage a printed worksheet can really help with. The flashcard beside it carries the mnemonic (ก is gor gai, chicken), the romanisation, the tone class, and audio so you hear it while you draw it.

GorGai Learn mode with a faint Thai consonant guide on the tracing canvas
Test mode

Write: blank canvas, from memory, then mark yourself

The guide disappears and so does the letter. You get the emoji hint, the romanised name and a question mark where the character should be, and you draw it from memory before revealing the answer and marking yourself right or wrong. This is the mode that actually builds recall, because being wrong and seeing it is the part that sticks. It is also the thing I could not do with a printed sheet, which is why the app exists at all.

GorGai Write mode showing an emoji hint and a blank canvas with the letter hidden
Test mode

Read: see the letter cold and name it

The reverse test. You are shown the character with nothing else, you try to recall its name and sound, then you reveal the name, the tone class and the mnemonic to check. Writing and reading are genuinely different skills, and it is very possible to be able to draw a letter you cannot recognise on a sign. This is the mode that matters when you are standing in front of one.

GorGai Read mode showing a Thai consonant flashcard before the answer is revealed
Vowels

Vowels: 32 forms, and the harder problem of where they sit

Thai vowels do not politely follow the consonant the way Latin ones do. A vowel can sit after it, before it, above it, below it, or wrap around it in more than one position at once, and that placement is most of the difficulty. All 32 forms get the same three modes as the consonants, tagged by position and paired up short against long, including the awkward ones like ฤ and อำ.

GorGai vowels practice showing Thai vowel forms and their positions
Words

Words: read a real word, then take it apart

Letters in isolation only get you so far. Here you get a whole Thai word, Thai first and meaning second, and you work out what it says before revealing it. Then the word breaks into tappable syllables so you can see which character did what, including compound vowels that wrap around a consonant. Sixty-seven words across eight everyday categories: animals, food, greetings, numbers, colours, body parts, places and daily life.

GorGai word reading flashcard showing the Thai word for cat

Decisions worth explaining

The interesting part of a project with no client is that every constraint was a choice.

No account, ever

Progress is saved in the browser, which means it is instant, it is the user’s, and I never see it. An account would have added a backend, a privacy policy and a login screen between someone and their first letter.

No client-side framework

Astro renders the page shells at build time and every interactive part is plain JavaScript. The whole app is a canvas, some state and a lot of letter data. A framework would have added a bundle to download before anything appeared, and the single most important property here is opening instantly on a mid-range phone.

No streaks and no guilt

There are optional practice reminders and that is the extent of it. Nothing turns red because you missed a Tuesday. Most learning apps monetise anxiety, and I did not want to build that.

Free, and staying free

Ads cover the hosting and are kept out of the practice area itself. There is no premium tier waiting to appear once enough people use it.

A look at it

GorGai running on a mobile phone
Built for a phone first, because fifteen minutes a day realistically happens standing up, somewhere inconvenient.
Talk to Terris Directly

Need something like this built properly?

Side projects are how I stay sharp. The client work is where that goes to use. Tell me what you are building and I will tell you straight whether I am the right person for it.

Terris
Chat with Terris
Typically replies instantly

Need a detailed quote? Get a Free Quote

Email Us
We reply within 1 business day