theHarmonicAlgorithm-3.0.0: Real-time harmonic progression generation for TidalCycles live performance
A live performance instrument for generating and shaping harmonic progressions in real time, trained on over 80 composers from the Yale Classical Archives Corpus. It integrates with TidalCycles via a form and kinetics framework, five voicing strategies, and a full virtual orchestra of 15 instruments.
Start here
- Harmonic.Lib — the single import for live coding. Re-exports everything below; a performance script needs nothing else.
Generating
- Harmonic.Framework.Builder — the generative engine. Modifier-based API
(
gen,genP,genFrom), composer blending, and multi-attempt rank-and-select. - Harmonic.Rules.Types.ProgressionContext — the three-layer progression
value (triad, strata, mode) that the
genPparadigm produces.
Playing
- Harmonic.Interface.Tidal.Bridge —
arrange, the bridge from a progression to a playable pattern. - Harmonic.Interface.Tidal.Arranger — voicing strategies (
grid,flow,lite,root) and progression manipulation. - Harmonic.Interface.Tidal.Form — the form and kinetics framework.
- Harmonic.Interface.Tidal.Orchestra — 15 orchestral instruments with built-in range clipping and divisi.
- Harmonic.Interface.Tidal.Groove — sub-bass and kick patterns.
- Harmonic.Traversal.WalkingBass — walking-bass line generation.
Music theory primitives
- Harmonic.Rules.Types.Pitch — pitch-class algebra as the Z12 cyclic group.
- Harmonic.Rules.Types.Harmony — chords, cadences and their concrete states.
- Harmonic.Rules.Types.Scale — pentatonic, modal and octatripentatonic vocabulary.
- Harmonic.Rules.Constraints.Filter — pitch-class set filtering.
Internals
Corpus ingestion (Harmonic.Rules.Import.CSV and friends) and scoring (Harmonic.Evaluation.Scoring.Dissonance, Harmonic.Evaluation.Scoring.VoiceLeading) are not needed to generate or play music.
Modules
theHarmonicAlgorithm-3.0.0
- Harmonic
- Harmonic.Config Connection constants and file paths for Neo4j and corpus data
- Evaluation
- Analysis
- Harmonic.Evaluation.Analysis.Markov Markov transition probability computation (ingestion-only)
- Database
- Harmonic.Evaluation.Database.Query Read-only interface to Neo4j for cadence graph traversal
- Scoring
- Harmonic.Evaluation.Scoring.Dissonance Hindemith-based dissonance evaluation
- Harmonic.Evaluation.Scoring.Progression Whole-progression scoring for rank-and-select generation
- Harmonic.Evaluation.Scoring.VoiceLeading Cyclic DP voice leading optimization
- Analysis
- Framework
- Harmonic.Framework.Builder Generative engine for harmonic progressions with unified diagnostics interface
- Harmonic.Framework.Builder.Core Core generation engine for harmonic progressions
- Harmonic.Framework.Builder.Diagnostics Diagnostic printing and chord tracing for generation
- Harmonic.Framework.Builder.Portmanteau Portmanteau name generation from composer blend strings
- Harmonic.Framework.Builder.Strata Strata-first traversal helpers for the
genPparadigm - Harmonic.Framework.Builder.Types Types for the harmonic generation engine
- Harmonic.Framework.Builder Generative engine for harmonic progressions with unified diagnostics interface
- Interface
- Tidal
- Harmonic.Interface.Tidal.Arranger Performance-oriented progression manipulation
- Harmonic.Interface.Tidal.Bridge TidalCycles interface for harmonic progressions
- Harmonic.Interface.Tidal.Form Kinetics framework for form-driven range gating
- Harmonic.Interface.Tidal.Groove Rhythm section interface for sub-bass and kick patterns
- Harmonic.Interface.Tidal.Instruments MIDI channel routing and instrument shorthand for TidalCycles
- Harmonic.Interface.Tidal.LineHarmony TidalCycles walking-bass interface
- Harmonic.Interface.Tidal.OctatripentatonicT Live-coding helpers for the octatripentatonic framework
- Harmonic.Interface.Tidal.Orchestra Orchestral instrument functions for TidalCycles
- Harmonic.Interface.Tidal.Utils TidalCycles helper functions for octave transposition and time rotation
- Tidal
- Harmonic.Lib The single import for live coding with theHarmonicAlgorithm
- Rules
- Constraints
- Harmonic.Rules.Constraints.Filter Pitch class set filtering using legacy notation
- Harmonic.Rules.Constraints.Overtone Constructive generation of valid triads from overtone sets
- Import
- Harmonic.Rules.Import.CSV CSV parsing for YCACL corpus ingestion
- Harmonic.Rules.Import.Graph Neo4j graph database connection and cadence storage
- Harmonic.Rules.Import.Transform YCACL data transformation into cadence structures
- Harmonic.Rules.Import.Types Shared record types for the YCACL ingestion pipeline
- Types
- Harmonic.Rules.Types.Harmony Chord, Cadence, and their Concrete State representations
- Harmonic.Rules.Types.Pitch Foundational pitch-class algebra as ℤ₁₂ cyclic group
- Harmonic.Rules.Types.Progression Progression type with Monoid structure and manipulation functions
- Harmonic.Rules.Types.ProgressionContext Three-layer progression value (triad / strata / mode) for the genP paradigm
- Harmonic.Rules.Types.Scale Pentatonic, modal, and octatripentatonic vocabulary
- Constraints
- Traversal
- Harmonic.Traversal.Probabilistic Gamma distribution sampling for weighted selection
- Harmonic.Traversal.WalkingBass Three-pass walking-bass line generator with derived entropy