strudel/packages/core
2023-02-01 15:49:55 +00:00
..
examples code format 2022-12-13 21:32:03 +01:00
test add pattern methods hurry, press and pressBy (#397) 2023-02-01 15:49:55 +00:00
.npmignore hotfix: npm ignore examples folder 2022-11-06 19:36:01 +01:00
animate.mjs rename a to angle 2023-01-19 11:59:43 +01:00
color.mjs better color support 2022-12-26 22:13:41 +01:00
controls.mjs add more synonyms 2023-01-12 17:40:58 +01:00
cyclist.mjs remove experimental class properties 2023-01-12 12:32:27 +01:00
draw.mjs localize draw logic 2023-01-13 12:03:34 +01:00
drawLine.mjs test all in source examples 2022-11-03 14:47:27 +01:00
euclid.mjs do less work when not drawing 2023-01-15 23:11:49 +01:00
evaluate.mjs fix: workaround Object.assign globalThis 2022-12-28 13:57:27 +01:00
fraction.mjs fix: #194 2022-11-21 21:59:08 +01:00
gist.js cache gist by default for faster eval 2022-06-18 23:06:21 +02:00
hap.mjs code format 2022-12-13 21:32:03 +01:00
index.mjs animate mvp 2022-12-31 16:23:45 +01:00
logger.mjs basic astro docs 2022-12-19 23:23:31 +01:00
package-lock.json bump already published packages 2022-12-13 22:36:13 +01:00
package.json Fix Bjorklund (#343) 2023-01-06 11:31:32 +00:00
pattern.mjs add pattern methods hurry, press and pressBy (#397) 2023-02-01 15:49:55 +00:00
pianoroll.mjs fix option handling 2023-01-13 13:00:11 +01:00
README.md remove old imports 2022-04-15 21:45:55 +02:00
repl.mjs MiniRepl: add punchcard flag for implicit vis 2023-01-13 15:13:39 +01:00
signal.mjs add run + test + docs 2023-01-19 11:47:11 +01:00
speak.mjs refactor speak 2022-12-10 22:56:08 +01:00
state.mjs redo headers 2022-04-28 14:38:41 +01:00
time.mjs fix first highlights 2022-11-13 02:00:09 +01:00
timespan.mjs code format 2022-12-13 21:32:03 +01:00
ui.mjs remove hideHeader function 2022-11-13 16:54:45 +01:00
util.mjs supper notes without octave 2022-12-23 23:01:07 +01:00
value.mjs delete bare value before numeral union 2022-12-09 11:00:28 +01:00
zyklus.mjs add scheduler.now to get phase starting from 0 2022-12-26 20:55:21 +01:00

@strudel.cycles/core

This package contains the bare essence of strudel.

Install

npm i @strudel.cycles/core --save

Example

import { sequence } from '@strudel.cycles/core';

const pattern = sequence('a', ['b', 'c']);

const events = pattern.queryArc(0, 1);

const spans = events.map(
  (event) => `${event.value}: ${event.whole.begin.toFraction()} - ${event.whole.end.toFraction()} `,
);

yields:

a: 0 - 1/2
b: 1/2 - 3/4
c: 3/4 - 1
a: 1 - 3/2
b: 3/2 - 7/4
c: 7/4 - 2