strudel/packages/core
2024-03-19 08:48:09 +01:00
..
test Beat-oriented functionality (#976) 2024-03-16 17:24:37 +00:00
.npmignore hotfix: npm ignore examples folder 2022-11-06 19:36:01 +01:00
clockworker.js stop clock if all stopped 2024-03-10 14:35:43 -04:00
controls.mjs merging main 2024-03-14 22:19:45 -04:00
cyclist.mjs rename zyklus 2024-03-07 12:01:08 +01:00
drawLine.mjs test all in source examples 2022-11-03 14:47:27 +01:00
euclid.mjs feat: can now invert euclid pulses with negative numbers 2024-02-25 14:43:02 +01:00
evaluate.mjs repl reset default dict 2024-02-29 04:54:03 +01:00
fraction.mjs Beat-oriented functionality (#976) 2024-03-16 17:24:37 +00:00
hap.mjs refactor: duration is now a regular control 2024-02-29 04:05:05 +01:00
index.mjs move draw logic to separate package 2024-02-29 22:14:53 +01:00
logger.mjs add debounce to logger 2024-02-29 04:25:00 +01:00
neocyclist.mjs stop clock if all stopped 2024-03-10 14:35:43 -04:00
neozyklus.js seperated service worker zyklus and cyclist zyklus because of import constraints on service workers 2024-02-22 00:16:36 -05:00
package.json remove other watch tasks for now 2024-03-14 15:31:50 +01:00
pattern.mjs Fix pure mini highlight (#994) 2024-03-18 10:37:55 +00:00
README.md the big rename: @strudel.cycles/* -> @strudel/* 2024-01-18 09:54:37 +01:00
repl.mjs fix android support 2024-03-07 23:04:46 -05:00
signal.mjs fix: add name tags 2024-02-29 15:25:31 +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 Revert "refactor: remove old draw logic" 2023-05-10 11:44:55 +02:00
timespan.mjs code format 2022-12-13 21:32:03 +01:00
ui.mjs remove this mess 2024-03-15 09:48:04 +01:00
util.mjs Beat-oriented functionality (#976) 2024-03-16 17:24:37 +00:00
value.mjs delete bare value before numeral union 2022-12-09 11:00:28 +01:00
vite.config.js remove cjs builds 2024-02-08 12:19:11 +01:00
zyklus.mjs add note to future 2024-03-07 12:35:39 +01:00

@strudel/core

This package contains the bare essence of strudel.

Install

npm i @strudel/core --save

Example

import { sequence } from '@strudel/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