NexusUI

Web Audio Interfaces


NexusUI is a collection of HTML5 interfaces and Javascript helper functions to assist with building web audio instruments in the browser.

In addition to interfaces, it offers a few helper methods for tuning and timing. It does not provide any sound-making capabilities –– for that, check out the Web Audio API or web audio libraries such as Tone.js, WebPD, or Gibber.

Documentation View on Github

Example



HTML
<div id="power"><div>
<div id="gain"><div>


JS
// Create interfaces
var power = new Nexus.Toggle("#power");
var gain = new Nexus.Slider("#gain");

// Create a sound source
var volume = new Tone.Volume(-Infinity).toMaster();
var synth = new Tone.Oscillator(300,"sine").connect(volume);

// Listen for interface events
power.on('change',function(v) {
	v ? synth.start() : synth.stop();
});

gain.on('change',function(v) {
	volume.volume.rampTo(v,.1)
});
gain.min = -100;
gain.max = 0;
gain.value = -30;


Support

NexusUI is an open-source project which is maintained in my spare time. If you enjoy NexusUI, please considering supporting its continued development and keeping it open-source.

©
experimental music & digital media @ louisiana state univeristy 2013-2016
ben taylor 2017-2019