Japanese braille shows up in places most people walk past without thinking — the textured rail at a train station, the edge of a pill box, the panel beside an elevator button. It's present, it carries information, and almost nobody can read it.
TenjiScan started from that observation. Point your iPhone camera at Japanese braille and get the text back on the spot. That's the whole pitch.
Why on-device processing mattered
The obvious implementation would be: send the photo to a server, run recognition there, return text. Faster to ship, potentially higher accuracy.
We didn't do that, for two reasons. First, the places where you'd actually want to read braille — subway stations, hospital hallways — are often places with weak or no connectivity. Second, you're sometimes photographing medication labels or personal items. Sending those images to a server creates a privacy concern that isn't worth carrying.
Since v4.0.0, everything runs locally. Vision framework plus a custom two-signal pipeline handles cell boundary detection first, then dot presence per cell. No image leaves the device.
What it supports
Japanese braille (JIS) and English braille (UEB Grade 1) are both covered. That handles the majority of real-world signage.
The honest limitation: Grade 2 contracted braille isn't supported yet. And recognition quality depends on lighting and camera angle — braille is a physical texture, so how light falls across it directly affects what the camera sees. Flat, even lighting and a straight-on angle give the best results.
Shipping a niche tool
One thing about building accessibility tools: the use case is clear. You know exactly what you're solving and for whom. That focus made some decisions easier — we didn't try to expand scope to other braille systems or add cloud features. It does one thing, on-device, with no account required.
Free to download. Optional one-time purchase removes ads.
App Store: https://apps.apple.com/jp/app/id6759526188













