Frets

The theory engine models pitch classes, scales, and tunings, then generates drills with true pitch, tab, and alternate-picking direction. The app below is the production build.

Parametric drill generation

Box positions, whole-neck runs, three-notes-per-string, diagonals, and arpeggios are computed for any tuning, scale, and root, verified by a property-based test matrix.

Ten-screen frontend

Ten screens (Today, Daily Session, Fretboard Lab, Song Workbench, Writing Bench, Jam, The Rig, Mastery, Ear Training, What's new) ported to React and running in-page.

Local-first architecture

Progress is a single JSON document with explicit backup and restore. Nothing is sent to a server.

ON STAGE

Play it here

Progress stays in your browser · Open full screen ↗

Monday · September 7
Welcome back
One lesson tonight. Everything else can wait.
Warming up the tubes…

Live app. Progress is stored locally in your browser. Open full screen ↗

Common questions

What is Frets?

Frets is a guitar practice app by Tristan J. Nolan that runs entirely client-side on tnolan.ai. It has a pure TypeScript music-theory engine (pitch-class math, fretboard mapping, parametric drill generation across tunings), nine practice screens, Web Audio playback and MIDI export, and progress stored locally in the browser rather than on a server.