Progressions
The progressions module renders a fixed catalog of 5 named chord progressions and labels scale degrees with correctly-cased roman numerals:
I-V-vi-IV- the “pop” progressionii-V-I- jazz cadenceI-IV-V- three-chord/blues-rockvi-IV-I-V- the “axis” progression12-bar-blues- standard 12-bar form
getRomanNumeral(degree, mode) returns the roman numeral for a scale degree (1-7) in a mode, reflecting that degree’s diatonic triad quality - uppercase for major ("I"), lowercase for minor ("ii"), lowercase with a ° suffix for diminished ("vii°").
getProgressionInKey(progressionId, root) transposes a catalog progression into any key, returning its chords in order.
Live Playground
Section titled “Live Playground”getProgressionInKey
getProgressionInKey(progressionId: ProgressionId, root: Note): Chord[]Renders a named catalog progression as chords in a given key, in order.
Result
[
{
"root": "C",
"type": "major-triad"
},
{
"root": "G",
"type": "major-triad"
},
{
"root": "A",
"type": "minor-triad"
},
{
"root": "F",
"type": "major-triad"
}
]getRomanNumeral
getRomanNumeral(degree: number, mode?: ModeName): stringReturns the roman numeral for a scale degree in a mode - case and suffix reflect diatonic triad quality.
Result
"I"