strudel/packages/transpiler
2026-01-08 12:31:26 -06:00
..
test Auto call functions in kabel; clean up end behavior of worklet; move kabel first in chain; write docstring 2026-01-08 12:31:26 -06:00
index.mjs the big rename: @strudel.cycles/* -> @strudel/* 2024-01-18 09:54:37 +01:00
package.json fix for node 24 support #1718 2025-11-04 20:54:21 -06:00
README.md the big rename: @strudel.cycles/* -> @strudel/* 2024-01-18 09:54:37 +01:00
transpiler.mjs Auto call functions in kabel; clean up end behavior of worklet; move kabel first in chain; write docstring 2026-01-08 12:31:26 -06:00
vite.config.js remove cjs builds 2024-02-08 12:19:11 +01:00

@strudel/transpiler

This package contains a JS code transpiler with the following features:

  • add locations of mini notation strings (double quoted or backticked) for highlighting
  • converts pseudo note variables to note strings
  • adds return statement to the last expression

Install

npm i @strudel/transpiler

Use

import { transpiler } from '@strudel/core';
import { evaluate } from '@strudel/core';

transpiler('note("c3 [e3,g3]")', { wrapAsync: false, addReturn: false, simpleLocs: true });
/* mini('c3 [e3,g3]').withMiniLocation(7,17) */

evaluate(note('c3 [e3,g3]'), transpiler); // returns pattern of above code