Files
strudel/packages/core
Felix Roos d0ce82e3cd Publish
- @strudel/codemirror@1.2.4
 - @strudel/core@1.2.4
 - @strudel/csound@1.2.5
 - @strudel/draw@1.2.4
 - @strudel/gamepad@1.2.4
 - @strudel/hydra@1.2.4
 - @strudel/midi@1.2.5
 - @strudel/mini@1.2.4
 - @strudel/mondo@1.1.2
 - @strudel/motion@1.2.4
 - @strudel/mqtt@1.2.4
 - @strudel/osc@1.2.4
 - @strudel/repl@1.2.5
 - @strudel/sampler@0.2.3
 - @strudel/serial@1.2.4
 - @strudel/soundfonts@1.2.5
 - superdough@1.2.5
 - @strudel/tonal@1.2.4
 - @strudel/transpiler@1.2.4
 - @strudel/web@1.2.5
 - @strudel/webaudio@1.2.5
 - @strudel/xen@1.2.4
2025-09-10 23:08:16 +02:00
..
2025-08-23 17:29:15 +01:00
2022-11-06 19:36:01 +01:00
2025-06-12 14:36:45 +01:00
2025-08-17 17:21:36 -04:00
2025-07-21 01:11:04 -04:00
2025-06-12 14:36:45 +01:00
2025-06-18 21:26:51 +02:00
2025-06-12 14:36:45 +01:00
2025-06-12 14:36:45 +01:00
2025-09-07 23:29:24 -04:00
2025-07-08 21:24:27 -04:00
2025-09-10 23:08:16 +02:00
2025-08-31 12:51:28 -04:00
2025-06-12 14:36:45 +01:00
2025-07-21 01:11:04 -04:00
2025-06-12 14:36:45 +01:00
2025-06-12 14:36:45 +01:00
2025-06-12 14:36:45 +01:00
2024-04-05 12:23:04 +02: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