-
5a91c3acfb
Normalize edge ratios, center/horizontal labels, add dynamic opacity and width based on harmonic distance
path_navigator_app
Michael Winter
2026-04-24 17:43:56 +0200
-
8fc949e828
Normalize edge ratios to display numerator > denominator, center labels, use horizontal text
Michael Winter
2026-04-22 10:48:19 +0200
-
1953c8b359
Fix ghost node SuperCollider playback: send frequency directly, apply octave adjustment, fix server error
Michael Winter
2026-04-22 10:26:04 +0200
-
f77d680609
Remove ghost node deletion from kill handlers (k/K keys)
Michael Winter
2026-04-21 17:09:34 +0200
-
9c84ed7a09
Remove chord info tables from bottom of page
Michael Winter
2026-04-21 17:01:29 +0200
-
b8f50a4563
Add ghost nodes for Y-drag with frequency ratios, fix display and play handling
Michael Winter
2026-04-21 16:55:40 +0200
-
e709d1a7a7
Add Y-axis octave drag, fix label positions, display toggle, ramp coloring, server octaveOffset support
Michael Winter
2026-04-20 22:46:41 +0200
-
a28ebb8a71
Fix label clicks to always use auto; reorder click handler: Shift=SC, Ramp=ramp, click=siren
Michael Winter
2026-04-20 18:18:30 +0200
-
8f92185e5e
Add Go To index input field
Michael Winter
2026-04-20 17:56:53 +0200
-
5a1a4f03dd
Add multi-siren control to Path Navigator
Michael Winter
2026-04-20 17:56:11 +0200
-
655cb68f31
Add osc_receiver_alt with monophonic release handling
main
alarming_v1
Michael Winter
2026-04-19 18:07:19 +0200
-
3b68c1a49e
Add Reseed & Generate button; adjust voice movement weights
Michael Winter
2026-04-19 01:34:56 +0200
-
a377558f89
Fix weight values allowing 0 and add normalization floor
Michael Winter
2026-04-18 15:33:49 +0200
-
a08c944f34
Add inline +/- buttons for number inputs, hide default spinners
Michael Winter
2026-04-09 11:07:18 +0200
-
c217e04243
Add Path Generator UI with import/export settings, save/load defaults, and transcribe
Michael Winter
2026-04-08 13:24:58 +0200
-
30675756c9
Add ramp exponent UI and split ramp_to_pitch for single voice
Michael Winter
2026-04-07 08:48:06 +0200
-
f6a98bf8a7
Add per-voice ramp cancellation and frequency tracking in osc_sender
Michael Winter
2026-04-04 22:11:27 +0200
-
f3a5dda4bc
Add ramp-to-chord with per-voice tracking and configurable siren IP
Michael Winter
2026-04-04 21:46:15 +0200
-
040ab9999d
Reduce OSC synth attack/decay envelope times
Michael Winter
2026-04-04 20:21:59 +0200
-
42aa7798d2
Simplify play-siren: remove unused frequency+voice mode
Michael Winter
2026-04-04 19:57:54 +0200
-
90f00e56c6
Add chord number labels with click-to-siren
Michael Winter
2026-04-04 19:56:39 +0200
-
62e6a75f4f
Add harmonic compactness factor
Michael Winter
2026-04-04 18:44:23 +0200
-
65e3a64a0c
Add RGR voice movement factor
Michael Winter
2026-04-04 16:53:44 +0200
-
1a56c35276
Add cents/frequency toggle for node labels
Michael Winter
2026-04-04 13:56:42 +0200
-
e09fbbae45
Fix OSC receiver port binding, add long attack/decay envelope
Michael Winter
2026-04-01 21:53:33 +0200
-
2a17339edc
Add octave offset for play-freq, adjustable via UI input
Michael Winter
2026-04-01 18:39:13 +0200
-
990e59b1d6
Fix edge bug: add broke flag to match Python for-else behavior
Michael Winter
2026-04-01 18:01:09 +0200
-
7259cd67bd
Add weighted cross-chord edges: 100x weaker than regular edges
Michael Winter
2026-04-01 17:48:47 +0200
-
ab7e949f07
Clean up unused API endpoints and server code
Michael Winter
2026-04-01 17:14:15 +0200
-
b4d6ea81a1
Fix: use change event instead of input for spinner buttons
Michael Winter
2026-04-01 17:02:08 +0200
-
c1f11184af
Add input listener back for spinner buttons
Michael Winter
2026-04-01 16:57:00 +0200
-
e819c374e4
Fix fundamental setting: remove input listener that spams server, only send on Enter/arrows
Michael Winter
2026-04-01 16:55:29 +0200
-
5b92e4ff83
Fix calculate_cents - use simple math.log2 instead of broken bit_length logic
Michael Winter
2026-04-01 16:47:45 +0200
-
8f332fac52
Add batch API endpoints for cents calculation, client fetches cents from server
Michael Winter
2026-04-01 16:44:20 +0200
-
c6bb3a12ce
Move graph computation from server to client
Michael Winter
2026-04-01 16:37:45 +0200
-
79e1259f5b
Add filepath input for loading any JSON file via API
Michael Winter
2026-04-01 16:33:13 +0200
-
a93ade34b4
Simplify UI: remove file dropdown, auto-send fundamental on keypress
Michael Winter
2026-04-01 13:18:09 +0200
-
94b34b4dc4
Add Shift+click for siren and k/K for kill
Michael Winter
2026-04-01 13:01:50 +0200
-
6ab162003e
Add OSC playback to path navigator webapp
Michael Winter
2026-04-01 11:23:24 +0200
-
dff8a4e6c2
Add all-chords continuous canvas with xforce bounds and pan navigation
Michael Winter
2026-04-01 09:59:30 +0200
-
2b7c882bc9
Fix column width in chord panel tables
Michael Winter
2026-04-01 09:18:39 +0200
-
e0bacce10a
Apply sleek black theme and table format for chord panels
Michael Winter
2026-03-31 19:17:37 +0200
-
00cfac2e5c
Add Cytoscape.js with custom xforce layout for chord visualization
Michael Winter
2026-03-31 18:44:47 +0200
-
88a9528e12
Add Flask server with Python backend for Path Navigator
Michael Winter
2026-03-30 22:38:52 +0200
-
2a027ba552
Add prev/current/next graph panels to Path Navigator
Michael Winter
2026-03-30 22:17:01 +0200
-
6924c85d19
Add vertical node positioning by frequency in Path Navigator
Michael Winter
2026-03-30 22:09:07 +0200
-
27d34fdafc
Add Path Navigator webapp for visualizing chord paths
Michael Winter
2026-03-30 21:06:14 +0200
-
3e0f2bc906
Add target register oscillations, amplitude, and fix negative target_register
Michael Winter
2026-03-30 20:47:20 +0200
-
dfdc0497a0
Add independent voice control to OSC sender with improved display
Michael Winter
2026-03-28 17:13:51 +0100
-
1dff1022ce
Add custom dims support via --dims-custom and update JSON output format
Michael Winter
2026-03-28 15:12:14 +0100
-
bb7a9ccb21
Add DIMS_3 support and fix dim_diff for prime 11
Michael Winter
2026-03-28 13:51:05 +0100
-
7dd7f23611
Fix uniform symdiff to fallback to other symdiff groups when no valid candidates
Michael Winter
2026-03-27 10:14:33 +0100
-
863423ca7a
Add uniform symdiff selection and store symdiff in graph edges
Michael Winter
2026-03-27 10:05:14 +0100
-
74aa937ec2
Add --target-register-power option to curve target register progression
Michael Winter
2026-03-26 15:41:41 +0100
-
8ea5c4fe0c
Use --fundamental for frequencies output as well as OSC
Michael Winter
2026-03-25 10:28:04 +0100
-
44506eed14
Add source_node and destination_node to path_steps.json
Michael Winter
2026-03-25 10:23:44 +0100
-
c1ff66265d
Fix max-path to represent total chord count instead of edge count
Michael Winter
2026-03-24 11:57:04 +0100
-
6245ce5e27
Make JSON output more readable - each pitch on one line
Michael Winter
2026-03-24 11:04:21 +0100
-
4804c0c244
Add LilyPond transcriber documentation to README
Michael Winter
2026-03-23 20:09:03 +0100
-
0f419a15b5
Add dynamic date placeholder to score template
Michael Winter
2026-03-23 20:01:51 +0100
-
c0ffaac95f
Use SemiStaffGroup in generated score
Michael Winter
2026-03-23 20:00:21 +0100
-
4ffbcc79d2
Fix score block structure - wrap staves in StaffGroup
Michael Winter
2026-03-23 19:55:48 +0100
-
6bf97e5abe
Make LilyPond template dynamic - title and staves generated from parameters
Michael Winter
2026-03-23 19:54:50 +0100
-
306de8b5c2
Add --transcribe option to CLI for generating LilyPond transcriptions
Michael Winter
2026-03-23 19:46:00 +0100
-
9dbde6a63d
Fix PDF output location and set default name
Michael Winter
2026-03-23 19:23:53 +0100
-
a0723e5ae3
Show dimension markup for first chord using refs within same chord
Michael Winter
2026-03-23 19:15:49 +0100
-
658837b83e
Fix transcriber to compute ref and dim_diff from chord data
Michael Winter
2026-03-23 19:12:22 +0100
-
d0bd15574d
Fix asymmetric connectivity in voice leading graph
Michael Winter
2026-03-23 18:46:14 +0100
-
dd637e64e2
Add LilyPond transcriber module
Michael Winter
2026-03-23 10:00:44 +0100
-
326ae9da1b
Add OSC Sender documentation to README
Michael Winter
2026-03-20 06:58:00 +0100
-
8326fc1d11
Add interactive OSC sender with preview mode and chord navigation
Michael Winter
2026-03-19 15:57:17 +0100
-
4a1e1f7ec2
Simplify quit: use Escape key instead of Ctrl+C
Michael Winter
2026-03-17 17:41:09 +0100
-
d2c88ccc3f
Use select with timeout for keyboard input
Michael Winter
2026-03-17 17:26:23 +0100
-
fd4b89670e
Fix Ctrl+C handling in OSC playback
Michael Winter
2026-03-17 17:19:52 +0100
-
ea3acf9efe
Replace --osc-enable with --osc-play
Michael Winter
2026-03-17 17:10:37 +0100
-
1ccab2088f
Add OSC sender for real-time playback
Michael Winter
2026-03-17 16:47:30 +0100
-
e687087e76
Fix fraction representation in output
Michael Winter
2026-03-17 15:30:05 +0100
-
e4b6d2cfdc
Rename 'target range' to 'target register' throughout
Michael Winter
2026-03-17 14:11:21 +0100
-
24709c3eda
Update README with complete CLI docs and rename args
Michael Winter
2026-03-17 09:11:25 +0100
-
146918c596
final weight is now product of factors raised to an exponent rather than sum
Michael Winter
2026-03-17 08:41:18 +0100
-
7809fa5a76
Refactor: Move factor methods to Path class, add normalized_scores
Michael Winter
2026-03-16 18:59:13 +0100
-
482f2b0df5
Refactor: Rename sustain/last_visited fields for consistency
Michael Winter
2026-03-16 17:35:07 +0100
-
861d012a95
Refactor: Unify Candidate and PathStep, fix DCA Hamiltonian
Michael Winter
2026-03-16 16:53:22 +0100
-
400f970858
Rename graph.py to pathfinder.py
Michael Winter
2026-03-16 16:13:19 +0100
-
b349ee89bc
Extract DIMS to separate dims.py module
Michael Winter
2026-03-16 15:50:02 +0100
-
ed13c006b0
removing errant session file
Michael Winter
2026-03-16 15:34:14 +0100
-
6d3cbd83e9
Fix cent_diffs to store signed values
Michael Winter
2026-03-16 14:53:13 +0100
-
1eb95ffad7
Refine melodic threshold to continuous scoring
Michael Winter
2026-03-16 14:11:27 +0100
-
1926930c3d
Refactor PathStep to represent edges with source/destination and before/after state
Michael Winter
2026-03-16 14:00:10 +0100
-
c682a1df02
Fix voice stay count to match master behavior
Michael Winter
2026-03-16 02:27:21 +0100
-
f2b785c98e
Encapsulate voice-leading in Path.step()
Michael Winter
2026-03-16 01:11:15 +0100
-
66669de00f
Add Path and Candidate classes for path state tracking
Michael Winter
2026-03-16 00:39:32 +0100
-
b20f02b60f
Fix DCA Hamiltonian: normalize by max instead of sum
Michael Winter
2026-03-15 13:04:00 +0100
-
218d7a55ff
Refactor DCA factor: rename to DCA Voice Movement and DCA Hamiltonian
Michael Winter
2026-03-15 12:20:12 +0100
-
8cdbe90501
Normalize edge weights with sum normalization
Michael Winter
2026-03-15 12:04:08 +0100
-
ebbb288844
Implement weighted contrary motion factor
Michael Winter
2026-03-15 11:31:24 +0100
-
559c868313
Fix Hamiltonian analysis and add DCA stay count metrics
Michael Winter
2026-03-15 11:13:24 +0100
-
34a6ebfabd
Add per-factor analysis metrics
Michael Winter
2026-03-15 10:48:06 +0100
-
16ecb192d1
Add analysis tool for chord sequences
Michael Winter
2026-03-15 10:42:22 +0100
-
0dbdfe02cb
Start target range from first chord average
Michael Winter
2026-03-14 03:24:04 +0100