Write all 71 hiragana from memory.

⚠ BASELINE 16 VS 17 UNRESOLVED — NUMBER BLOCKED UNTIL RE-GRADE. STRICT CONFIDENCE GRADING, SAME 46-CHARACTER TEST ALL THREE RUNS.
Thumbnail: a gray hand-drawn あ struck through in magenta on the left, a clean printed あ on black on the right, captioned 53 MIN LATER

I Built a Japanese Writing App Before the Train Got to Osaka

Joey Guierra

THE BUILD, FILMED
I Built a Japanese Writing App Before the Train Got to Osaka
WATCH NOW →
§ 02

What it does

45S AT 2× · NO AUDIO TRACK · LOOPS
§ 03

Install it

There's no App Store link. It's a website that installs like an app — that's why it's free, and why it works with no signal.

TAP A STEP TO HOLD IT

§ 04

What happened when I used it

The baseline answer sheet: a hand-written romaji grid running a, i, u, e, o down to wa, wo, n, with a hiragana character under some prompts and a hand-drawn question mark under the rest.
GREEN — FROM MEMORY
✕ — BLANK OR WRONG
RESULTBASELINE WRITING TEST · BEAT 2/6
16/46FROM MEMORY
34.8% OF BASE KANA · NIGHT BEFORE THE TEST
22.5% OF ALL 71 KANA
CORRECT16
WRONG / MISSED30
VS ALL KANA16/71
IN MEMORY
あ い う か き く こ す て と は ひ へ ほ わ ん
WRONG / MISSED — 30
え お が ぎ ぐ げ ご さ し せ そ た ち な に ぬ ね の ふ ま み む め も や ゆ よ ら り る
OVL-02D · BEAT 2 RESULTS — THE LIVE OVERLAY FROM THE VIDEO · PLAYS ON SCROLL, ~6S, THEN HOLDS
SAME 46-CHARACTER TEST · THREE RUNS · FROM MEMORYSTRICT CONFIDENCE GRADING
BASELINE · DAY 016/46 · 34.8%
+5 MIN AFTER THE DRILL39/46 · 84.8%
NEXT DAY · +12 HRS43/46 · 93.5%
+27 KANA+58.7 PTS · ONE DAY+4 OVERNIGHT — NO PRACTICE BETWEEN THE TWO TESTS
THE CAVEATS — READ THESE
  • n = 1. It's me.
  • I already read hiragana fluently. This measures production, not learning from zero.
  • "Correct" meant strict confidence grading — vague recollection or "kinda looks like it" counted as a fail.
  • Baseline was the 46 base kana; the app covers all 71. The comparison run re-uses the identical 46-character test, so the numbers are actually comparable.

This is one person, one day. It's not a study. It's a log.

§ 05

The prompts

4 STEPS · 6 SENDS — the whole build, in the order it went out. Transcribed from the creator's own file, line breaks and typos included.

01THE BRIEF

Let's make a new app. We'll call it kanahero. nextjs PWA, no API, no backend, works on a plane This app will help me write hiragana from memory. I find that I can read hiragana but I cannot write it without reference. the loop: romaji prompt card on top -> I write the character by hand on a canvas on the bottom -> flip prompt card -> the real stroke order animates on top of my attempt -> i grade myself (got it or missed) -> missed cards come back until I get them. all 71 shuffled. also have an option between all 71 or base 46 kana only. keep track of how many of the 71 I've written from memory across sessions, on device. that count is the whole point of the app so put it where I'll see it. the strokes have to animate the way a pen moves, not trace the outline of the glyph. find a source for that. what it does not have: handwriting recognition, hints, nav bar, settings, accounts, streaks, percentages, no skip cards, self grading is the whole point. before you write any code, give me a build brief as SPEC.md. This will have info about the app, the screen map with what's on each screen, user flows, where the stroke data comes from and what attribution it obliges me to show, and what you are deliberately not building. I'm handing that file to a design tool, so the screen map has to fit on one screen — put your reasoning below it, not inside it.

02SCAFFOLD + STROKE DATA2 SENDS
CLAUDE DESIGN

1. create a skeleton of the mobile app kanahero. screens and userflows. low fidelity unstyled only for now.

CLAUDE CODE

looks right, go ahead. set up the nextjs app and prefill the PWA metadata, then bake and verify the stroke data. give me a /verify page that renders all 71 animating so I can check it myself before we build anything on top of it.

03THE LOOP

strokes look good. now build the loop — every screen and flow in SPEC.md, functional only. no styling beyond what you need to test it. when it works and you've verified it, stop and tell me. design pass comes after.

04THE DESIGN PASS2 SENDS
CLAUDE DESIGN

ok go ahead and create hi fidelity mockups for all 4 screens. refer to the uploaded the-log-reference html file. That file contains channel specific information. Make the high fidelity mocup specific for kanahero

CLAUDE CODEPLAYWRIGHT SKIPPED DUE TO TIME CONSTRAINT

skip playwright right now. polish design. refer to /design folder

THAT IS THE FILE. IF ANYTHING ELSE WAS SENT AT THOSE TOOLS, NOBODY WROTE IT DOWN — SO NOTHING HERE CLAIMS THIS IS EVERY KEYSTROKE.
§ 06

The code, and the one prepared thing

The code, if you'd rather read than build. The prompts above are the actual path.

github.com/joeyguierra/kanahero

The stroke data I pulled and checked the night before. Here's the file. Everything else you're watching happen.

STROKE ORDER DATA — STROKESVG BY ZHENGKYL (MIT) · github.com/zhengkyl/strokesvg
SVG PATHS DERIVED FROM THE KLEE ONE FONT — SIL OPEN FONT LICENSE 1.1 · openfontlicense.org