strudel/packages/mini
2023-10-28 23:49:30 +02:00
..
test support mininotation '..' range operator, fixes #715 (#716) 2023-10-01 13:20:49 +01:00
index.mjs add barrel exports 2022-05-17 00:22:50 +02:00
krill-parser.js Add a human-readable error message for invalid char in step 2023-10-21 23:20:04 +02:00
krill.pegjs Add a human-readable error message for invalid char in step 2023-10-21 23:20:04 +02:00
mini.mjs support mininotation '..' range operator, fixes #715 (#716) 2023-10-01 13:20:49 +01:00
package.json Publish 2023-09-17 12:35:03 +02:00
README.md replace strudel.tidalcycles.org with strudel.cc 2023-10-28 23:49:30 +02:00
vite.config.js add mini build 2023-01-28 22:16:04 +01:00

@strudel.cycles/mini

This package contains the mini notation parser and pattern generator.

Install

npm i @strudel.cycles/mini --save

Example

import { mini } from '@strudel.cycles/mini';

const pattern = mini('a [b c*2]');

const events = pattern.firstCycle().map((e) => e.show());
console.log(events);

yields:

(0/1 -> 1/2, 0/1 -> 1/2, a)
(1/2 -> 3/4, 1/2 -> 3/4, b)
(3/4 -> 7/8, 3/4 -> 7/8, c)
(7/8 -> 1/1, 7/8 -> 1/1, c)

Play with @strudel.cycles/mini codesandbox

Mini Notation API

See "Mini Notation" in the Strudel Tutorial

Building the Parser

The parser [krill-parser.js] is generated from krill.pegjs using peggy. To generate the parser, run

npm run build:parser