memlnaut-nisps/playground/js
w1n5t0n efcf6d2c06 feat(shapeseq): implement Layer 2 — all 8 primitives and chain runner
primitives.js (505 lines): All 8 sequencing primitives extending
Primitive base class:
- EuclideanRhythm: Bjorklund-distributed trigger patterns
- ProbabilityGate: PRNG-based trigger filtering + accent assignment
- PitchWalker: stateful constrained random walk with gravity
- Ratchet: probabilistic step subdivision (1-4x)
- SwingGroove: alternating-step timing offsets (max triplet feel)
- DensityMorph: trigger placement with clustering control
- IntervalLock: 11-scale pitch quantizer (chromatic→diminished)
- VelocityShaper: 5 curve types with depth/phase control
Includes PRIMITIVE_REGISTRY for chain builder UI.

chain.js (319 lines): Sequential pipeline chain evaluator.
Buckets primitives by category (generators→processors→converters→
timing), forks deterministic PRNG per primitive, merges multiple
generators via additive (OR) or multiplicative (AND) mode
(configurable in real time). Flat param distribution by chain
position. Full state serialization for freeze support.
2026-03-24 02:06:17 +02:00
..
nisps feat(playground): replace JS ML engine with WASM nisps-core 2026-03-23 23:23:07 +02:00
shapeseq feat(shapeseq): implement Layer 2 — all 8 primitives and chain runner 2026-03-24 02:06:17 +02:00
synth fix(playground): move arpeggiator to Worker thread, throttle synth params 2026-03-24 01:42:37 +02:00
ui feat(playground): add MediaPipe hand tracking input with dev panel 2026-03-23 23:28:58 +02:00
a-app.js fix(playground): move arpeggiator to Worker thread, throttle synth params 2026-03-24 01:42:37 +02:00
app.js fix(playground): prevent 1/2 keys being swallowed by focused sliders 2026-03-22 11:52:30 +02:00
b-app.js feat(playground): expand gamepad support with face buttons and Steam Deck fixes 2026-03-22 22:40:15 +02:00
c-app.js feat(playground): expand gamepad support with face buttons and Steam Deck fixes 2026-03-22 22:40:15 +02:00