niraj.dev

← Register of issued works

Nº ND·26-004 JavaScriptWebNo buildLocal-only

type

A typing test that learns where you're weak - and drills exactly there.

TYPE - Interface specimen
Fig. 1 · Screenshot pending - swap this figure for a real capture (see repo README)

What it is

type looks like Monkeytype and thinks like Keybr. Adaptive mode weights upcoming words toward the keys you actually miss, per-key error tracking feeds a heatmap, and the usual modes are all present - time, words, quote, story, infinite, zen - with live WPM, raw speed, accuracy and consistency charts running as you go.

The sound is the odd flex: thirteen mechanical keyboard switches synthesized procedurally in the browser - no audio samples shipped. Story mode types you through public-domain prose instead of word salad. And the whole thing is three files of JavaScript and one stylesheet: no build step, no dependencies, no network calls, stats stored locally and nowhere else.

Highlights

  • Seven modes - time, words, quote, story, infinite, zen, adaptive
  • Adaptive drilling weights words toward your weak keys
  • Live WPM, raw, accuracy and consistency metrics with running charts
  • Per-key error tracking and heatmap
  • Thirteen procedurally synthesized keyboard switches - zero audio samples
  • Single-line and paragraph layouts
  • No build step, no network calls, local-only storage

Install

git clone https://github.com/niraj-envision/type.git
cd type
python3 -m http.server 8777

Or run ./build.sh to inline everything into a single dist/type.html. A hosted copy runs at type-topaz.vercel.app.

Specification

LanguageJavaScript · CSS · HTML
PlatformAny modern browser
DependenciesNone - three JS files and a stylesheet
LicenceSee repository
Repositorygithub.com/niraj-envision/type