Toku Reader

Furigana on any Japanese website — on your iPhone

Written by Darren Nah, who builds Toku Reader. Checked September 2026.

A Japanese page is not hard because the grammar is hard. It is hard because there is a kanji in the second line you cannot pronounce, and a word you cannot pronounce is a word you cannot look up, ask about, or remember.

On a laptop, this is solved

There are good browser add-ons for Chrome and Firefox that put ふりがな over the kanji on any page you visit. They are free, several are open source, and if you read Japanese at a desk you should use one. I am not going to pretend otherwise.

On a phone, it mostly isn’t

Those add-ons are built for a desktop browser. Mobile Safari’s extensions are a much narrower thing, and the phone is where most people actually read — on a train, in a queue, in bed. So the question “how do I put furigana on a Japanese website” has a good answer on a laptop and, until now, a bad one on the device it is usually asked from.

What Toku Reader does

  1. Open the web reader and type or paste the address — or share a page to Toku Reader straight from Safari.
  2. The page opens inside the app with its layout intact, and ふりがな appears over the kanji.
  3. Tap any word for its meaning, its pitch accent and the plain form it came from.
  4. Save the ones worth keeping. They go into review with their sentence.

The readings go over the characters, not over the word as a lump — and they are worked out from the sentence, not looked up one character at a time, because Japanese kanji change reading depending on what is around them. Getting that right is the whole engine: it is checked against 439 golden tests, real sentences with a known correct answer, every time it changes.

Chinese too

The same reader puts pinyin over a Chinese page, with the tone changes applied — and shift depending on what follows them, and two third tones in a row are not said as written. Traditional characters are treated as their own script, not converted. That side has roughly 800 tests in the code plus 1,178 saved sentences re-checked on every change.

What it needs, and what it doesn’t

Fetching a web page needs the internet, obviously. Reading it afterwards does not: the dictionaries are inside the app, so the lookups keep working with no signal. There is no account, and nothing about what you read is sent anywhere.

Download

App Store · Google Play