Tools

Free tools and interactive handouts for music theory and music technology. They run in your browser, with nothing to install.

A form-function diagram of an Eroica exposition sketch: main theme, transitions, standing on the dominant, subordinate theme and codettas, with a measure-number bar below

Form-Function Diagram Creator

Draw form-function diagrams of classical themes, phrases and developments. Drag shapes into a row, then type in names and measure numbers; each shape's width follows its length. Add cadences, keys, multi-part themes, cores, and a measure-number bar. Export the diagram as SVG or PNG, or share an editable copy by link. Your work stays on your computer.

The shape vocabulary comes from my dissertation, Analyzing Beethoven's Eroica Sketches (ยง2.2), with some new shapes created for development functions. Function names follow William E. Caplin, Analyzing Classical Form (2013).

Open the Form-Function Diagram Creator
The Tonnetz folded into a torus, with major triads in gold and minor triads in blue

Tonnetz: Extended Harmony

An interactive, three-dimensional Tonnetz for neo-Riemannian theory. Watch the lattice of triads grow from a single chord and fold into a torus, find the shortest chains of P, L and R moves between any two triads, explore all six transformations and their cycles, and see where major, minor, octatonic, whole-tone and hexatonic scales sit on the grid. Every step plays on piano.

Companion materials: Reference manual (PDF) and Analysis sheet (PDF).

Piano samples: Salamander Grand Piano by Alexander Holm, CC BY 3.0.

Open the Tonnetz
The signal processing handouts: tabs for levels and gain staging, EQ, compression, gates and expanders, transient shaping, limiting and saturation

Music Technology: Signal Processing Handouts

Interactive class handouts that follow a typical signal chain: levels and gain staging, EQ, compression, gates and expanders, transient shaping, limiting, and saturation. Each one explains what the processor does and how to set it, with sourced facts and audio examples you can play and adjust in the browser. Each handout can also be opened on its own for printing.

Open the handouts