Playa
A framework for musical composition. It allows creating custom music algorithms, musical phrases, percussion rhythms, harmonic sequences and more.
Install / Use
/learn @ricardomatias/PlayaREADME
PLAYA (pronounced ˈpleɪə) is a framework for musical composition. It allows creating custom music algorithms, musical phrases, percussion rhythms, harmonic sequences and more.
Install
npm install --save playa
Usage
ES6 Modules
import { Chord, Key, Rhythm } from 'playa';
// or everything
import * as Playa from 'playa';
Common JS (Node)
const { Chord, Key, Rhythm } = require('playa');
// or everything
const Playa = require('playa');
Example
import { Scale, createMotif } from 'playa';
const scale = new Scale('A', Scale.Major);
createMotif(scale.notes, ['4n', '2n', '8nt']);
/* =>
[
{ time: 0, dur: 480, next: 480, midi: 73, note: 'C#4', isRest: false },
{ time: 480, dur: 960, next: 1440, midi: 80, note: 'G#4', isRest: false },
{ time: 1440, dur: 160, next: 1600, midi: 74, note: 'D4', isRest: false }
]
*/
Guides
Interactive guide here which uses Tone.js for the sound.
An example of using PLAYA with P5 and Tone.js - PLAYA meets P5
Documentation
Can be found here.
Templates
License
Related Skills
node-connect
329.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
81.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
329.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
81.1kCommit, push, and open a PR
