import * as React from "react"; import { createRoot } from "react-dom/client"; import { requestAudioContext, randrange } from "./lib/util"; import Relabi from "./relabi"; import { Kalimba, Drums } from "./lib/instruments"; document.body.style.backgroundColor = "#111"; document.body.style.color = "#fff"; requestAudioContext(() => { document.body.innerHTML = '
'; const relabi = new Relabi({ waves: [ { type: "sine", frequency: 0.75 }, { type: "sine", frequency: 1.0 }, { type: "sine", frequency: 1.617 }, { type: "sine", frequency: 3.141 }, ], bounds: [ { level: -0.5, sounds: [ { instrument: Drums, index: 0 }, { instrument: Drums, index: 1 }, ], }, { level: 0.5, sounds: [ { instrument: Drums, index: 2 }, { instrument: Drums, index: 3 }, ], }, { level: -0.25, sounds: [ { instrument: Kalimba, frequency: 440 }, { instrument: Kalimba, frequency: (440 * 3) / 2 }, ], }, { level: 0.25, sounds: [ { instrument: Kalimba, frequency: (440 * 6) / 5 }, { instrument: Kalimba, frequency: (440 * 6) / 7 }, ], }, ], }); relabi.start(); const root = createRoot(document.getElementById("app")); root.render(