Pentatonic v0.1.2

Turn any array of integers into a fun little melody.
There are 1 star-gazers on GitHub and it was downloaded 89 times in the last month on npm.

A snippet of a C Major Pentatonic scale.

Hey, psst!… You can jump straight down to the examples!


Pentatonic is a small JavaScript file that will play music generated from an array of integers from anywhere in your DOM.


Why not? No, but really though, there’s no serious reason for this. It’s just fun.


Yoink it from npm:

npm install @chrisburnell/pentatonic

You can also just download it directly from GitHub:


pentatonic.js gives you a function, pentatonic() to use, like so:

document.querySelectorAll(".pentatonic").forEach(target => {
target.addEventListener("click", () => {

The function takes six parameters:

  1. notes — an array of positive integers (required)
  2. duration — the length of time to play the audio for, represented in milliseconds (default = 4000)
  3. volume — controls the gain of the audio, represented by a 0–1 range (default = 0.5)
  4. keyStart — the zero-index of the key on a standard keyboard from which the scale should start (default = 29 / C♯3 / D♭3)
  5. keyIntervals — an array of integers which represent half-steps in a loop which composes the desired scale (default = [2, 2, 3, 2, 3] / a pentatonic scale)
  6. keyLimit — represents the highest index in the desired scale by which input is bound by (default = 12)


Type some numbers in the input field below and a playable sparkline will be built!