A Mac typing coach for proficient typists

Type better by fixing what actually slows you down.

TypingLens learns from the typing you already do, locally on your Mac. It ranks the words, bigrams, and fingerings that actually slow you down — and drills them back.

A sample week of your typing

…refactored the implementation so the becomes cleaner — with th the caveat that concurrent writes still need the reader lock before we can ship it.

  • Local only
  • No account
  • macOS 13+
  • GPL-3.0

Not just the words. The hands.

Point your Mac's camera at the keyboard. TypingLens reads which finger landed on which key — so the wrong-finger habits you didn't know you had get ranked alongside the words you stall on.

Top-down keyboard with finger anchors and a flagged cross-hand reach Eight green dots mark the home-row anchors for each finger. A dashed warm-colored arc traces a cross-hand reach from the left index finger up to the Y key, which belongs to the right index. Q W E R T Y U I O P A S D F G H J K L ; Z X C V B N M , . /
cross-hand left index reached for Y ranked · drilled tomorrow

Frames are processed on-device and dropped — nothing leaves the Mac.

Your typing never leaves your Mac.

GPL-3.0 on GitHub. Line-for-line auditable.

  • No account.
  • No cloud sync.
  • No keystroke upload, ever.
  • No “AI coach” small talk.
  • No dark patterns in the drill screen.

Capture, rank, practice.

  1. I. Capture

    Runs quietly in the menu bar. Your keystroke timing stays on your Mac.

  2. II. Rank

    Words, bigrams, and fingerings — all ranked the same way. The slower the habit, the more it matters.

  3. III. Practice

    Drills are built from your own backlog, not a generic wordlist.

Typing apps and typing tests measure how fast you can type their words. TypingLens measures how fast you type your own — and drills the words, bigrams, and finger habits you actually stall on.

The goal isn't faster typing. It's never noticing your hands.