No description
  • C++ 72.2%
  • Python 26.8%
  • CMake 1%
Find a file
Peter Swimm 3e735c83a2 feat: add XY pad, chaos knob, cultural resonance to navigator
- Expand genres.json from 4 to all 14 genres (rock, ballad, piano, strings, bass, brass, organ, mallet, woodwind, pluck, perc, vocal, pads, fx)
- Add song anchors with documented DX7 provenance (ROADSANNA/Africa for mallet, E.PIANO 1 for ballad, etc.)
- Add knob relation graph (inverse, amplifies) for semantic coherence
- navigator.py: flip_xy() for 2D cultural anchor pad interpolation
- navigator.py: chaos() for genre-conformant randomisation
- navigator.py: cultural_resonance() to measure distance to all song anchors
- navigator.py: knob relations propagate tension through relational graph
- __main__.py: new REPL commands (xy, chaos, songs)
- Tested: xy pad correctly interpolates between anchors, chaos stays genre-valid, cultural resonance matches expectations
2026-03-21 12:38:06 -07:00
Docs/genre_nav_prototype feat: add XY pad, chaos knob, cultural resonance to navigator 2026-03-21 12:38:06 -07:00
Source Initial Chavo repo: DX7 semantic UI VST3 plugin 2026-03-21 12:12:02 -07:00
Tools/dx7-import Initial Chavo repo: DX7 semantic UI VST3 plugin 2026-03-21 12:12:02 -07:00
CMakeLists.txt Initial Chavo repo: DX7 semantic UI VST3 plugin 2026-03-21 12:12:02 -07:00
README.md Initial Chavo repo: DX7 semantic UI VST3 plugin 2026-03-21 12:12:02 -07:00

Chavo

Chavo is a DX7-emulation VST3 plugin with a genre-conformance navigator front-end.

Overview

Chavo pairs the Dexed FM synthesis engine with a semantic UI layer that helps users navigate the DX7 preset space by genre. Instead of browsing a flat list of 40,000+ patches, users:

  1. Select a genre (Bass, Piano, Organ, Strings, etc.)
  2. See genre conformance for the current patch (0-100%)
  3. Turn semantic knobs (Grit, Warmth, Brightness, etc.) that morph patches toward genre centroids
  4. Toggle "Expert View" to access Dexed's traditional FM operator interface

Architecture

SemanticEngine

  • GenreData.h/cpp: Genre centroids (14 FM parameters) and knob bundles (weights per parameter)
  • DX7Bridge.h/cpp: Maps abstract parameters (0-1) ↔ Dexed's CtrlDX operator controls

UI

  • GenreNavComponent.h/cpp: JUCE component with genre buttons, conformance bars, semantic knobs
  • DXLookNFeel.cpp: Toilville brand tokens (primary blue #7394C8, gold accents #E1B659)

Building

cd chavo
mkdir -p build
cmake -B build -G Xcode
cmake --build build --config Release

Features

  • Genre-aware preset navigation
  • Real-time conformance scoring
  • Semantic knob morphing toward centroids
  • Toggle to Dexed operator view
  • Toilville brand theming

Derivation

Chavo is derived from:

  • Dexed — FM synthesis engine (JUCE/C++)
  • OPSL — preset deduplication & import tooling (Python)
  • Genre Navigator Prototype — L2-distance KNN reclassification (Python)

See Docs/ for architecture notes and prototype code.

Status

🚀 Ready to build and test.