Documentation

Six guides. The first explains what the tool measures and why; the rest are drills for a specific family of Rust syntax, in the order they are worth learning.

  • What SyntaxGym is, and what it measures

    Every metric defined precisely: keystroke accuracy, consistency, weak tokens, hesitation and mastery. How token detection avoids counting a match inside a comment, where your data lives, and what the tool deliberately does not do.

  • Rust typing practice: a method, not a speed test

    Why Rust is structurally slow to type — symbol density, prefix operators, nested closers — what to measure instead of words per minute, and the ten-step order for drilling it.

  • Enum and match typing practice

    The four-beat rhythm of a match arm, why the fat arrow is the most-reported weak token in Rust, and the five pattern forms worth drilling: guards, tuple and struct destructuring, @ bindings and let else.

  • Option and Result typing practice

    Why these two types generate more keystrokes than anything else in Rust, the ten-token inventory, the question mark operator and its From-conversion edge, and how to choose between four near-identical fallback methods.

  • Borrowing and ownership typing practice

    Why a prefix ampersand breaks typing rhythm in a way infix operators do not, the eight borrow shapes worth drilling, and why a lifetime is not an unterminated character literal.

  • Collections and DSA typing practice

    Vec, HashMap, VecDeque and BinaryHeap, the entry-API counting idiom, and four algorithm shapes — binary search, sliding window, linked-list reversal and a Reverse-wrapped min-heap.

Prefer to just start?

The trainer works without reading any of this.

Start practice