{"_id":"@doot-games/pipeline","name":"@doot-games/pipeline","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@doot-games/pipeline","version":"0.1.0","description":"Chart engine router: Quick, Drum Aware, or Stem Split, with fallback and progress hooks.","type":"module","sideEffects":false,"main":"./src/index.js","module":"./src/index.js","exports":{".":"./src/index.js"},"license":"MIT","author":{"name":"Moheeb Zara"},"dependencies":{"@doot-games/analysis":"0.1.0","@doot-games/charter":"0.1.0","@doot-games/stems":"0.1.0"},"_id":"@doot-games/pipeline@0.1.0","_nodeVersion":"22.12.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-ZnEVCCK8tZrRT+6qLEOERgCkfiie/bx4kMs1I+H1lrlgWF/bd5ZuZ8ED0KNd3i2vdpMoRtr6jSUkF2pektfVcQ==","shasum":"7a9acff175283b3c624744a56b9d4f102c83c756","tarball":"https://registry.npmjs.org/@doot-games/pipeline/-/pipeline-0.1.0.tgz","fileCount":3,"unpackedSize":5966,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDurOK0zIXbiSn/u4dQPVciVwYA/N2XPvHfL9L5vUJcmAIgYzPGHhlXeyEl6XwS7m4b7FYwXyGXVZFjt/LYYZmzxkw="}]},"_npmUser":{"name":"virgilvox","email":"moheeb.698@gmail.com"},"directories":{},"maintainers":[{"name":"virgilvox","email":"moheeb.698@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/pipeline_0.1.0_1782937998460_0.3840564053499964"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-01T20:33:18.259Z","0.1.0":"2026-07-01T20:33:18.574Z","modified":"2026-07-01T20:33:18.803Z"},"maintainers":[{"name":"virgilvox","email":"moheeb.698@gmail.com"}],"description":"Chart engine router: Quick, Drum Aware, or Stem Split, with fallback and progress hooks.","author":{"name":"Moheeb Zara"},"license":"MIT","readme":"# @doot-games/pipeline\n\nThe chart engine router. Picks the analysis path for the chosen engine, awaits any\nheavy model, applies fallback, reports progress through hooks, and runs the charter\nfor each requested difficulty. Depends on `analysis`, `charter`, and `stems`.\n\n## Engines\n\nOnly engines with a working in-browser method exist:\n\n- `quick` onset and tempo, lane bias off, fast.\n- `drum` per-band onsets bias lane choice. The default.\n- `stem` isolate the drum stem over WebGPU, then chart the drums. Falls back to `drum` on the full mix when WebGPU is unavailable, and the result records which path actually ran through `engineUsed`.\n\nThere is no neural step-author engine, because no in-browser step-placement model\ncan be loaded and run.\n\n## API\n\n- `ENGINES` the engine descriptors.\n- `generate(source, options?, hooks?)` returns `{ charts, engineUsed, analysis, tempo }`. `source`: `{ buffer, analysis?, tempo?, title? }`. `options`: `engine`, `difficulties[]` or `difficulty`, `bpm?`, `seed?`. `hooks`: `stage(name)`, `progress(0..1, msg)`, `status(msg)`.\n- `generateChart(source, options?, hooks?)` generate one difficulty and return the chart.\n\n`engineUsed` is how the review step reports the path that ran, for example\n`stem-split (drums isolated)` or `drum-aware (stem fallback)`.\n","readmeFilename":"README.md","_rev":"1-30df4aba43bea37a6f1e2b85ec1873fd"}