1.4.6 • Published 9 years ago

start-app v1.4.6

Weekly downloads
7
License
MIT
Repository
github
Last release
9 years ago

start-app unstable

Create demo page for an audio component.

Usage

npm install start-app

var createDemo = require('audio-demo');

var app = createDemo({
	//container to use as a start-app demo
	container: el,

	//audio context (by default audio-context module)
	context: audioContext,

	//default source url to play, if undefined open file dialog will be shown
	source: null,

	//API token for soundcloud
	token: 'xxxxx...',

	//allow dropping files to browser
	dragAndDrop: true,

	//WIP open last user settings from last session: song, time
	saveSession: true,

	//enable open file dialog
	file: true,

	//enable load url input
	url: true,

	//enable microphone input
	mic: false,

	//default color for all elements
	color: 'black',

	//set of icons to use for source input component (svg components)
	icons: {open, record, mic, error, soundcloud, loading, error, url},

	//show fps stats
	fps: true,

	//start song as only as ready
	autoplay: true,

	//repeat played track or stop at the end
	loop: true,

	//show progress bar at the top of the page
	progress: true,

	//show play/pause buttons
	playPause: true,

	//show stop button
	stop: true,

	//show title of track/current source
	title: true,

	//show status icon
	icon: true,

	//github link
	github: 'dfcreative/start-app',

	//reflect params in navigation history
	history: true,

	//enable settings menu, optionally with the passed fields
	params: [
		{
			name: 'logarithmic',
			type: 'checkbox',
			value: true
		},
		{
			name: 'colormap',
			label: 'Color map',
			type: 'select',
			values: {
				cdom: 'cdom',
				inferno: 'inferno',
				plasma: 'plasma'
			},
			value: 'cdom',
			change: function (value) {}
		},
		{
			name: 'text-param',
			label: 'Text Param',
			type: 'text',
			placeholder: 'some value',
			value:'',
		}
	]
});

//called when new source is set, inc. microphone.
app.on('source', (audioNode, url) => {
	//do any sort of connection here
	audioNode.connect(app.context.destination);
});

//set a new audio source
app.setSource(url, cb(audioNode, url)?);

//control playback & menu - play/pause/stop
app.play();
app.pause();
app.reset();

//called when track is played/paused/stopped
app.on('play', (audioNode) => {});
app.on('pause', (audioNode) => {});
app.on('stop', (audioNode) => {});


//call to update options
app.update(opts);

//set color of fonts, icons, fps etc. Better than calling update.
app.setColor(color);


//called when any of settings changed
app.on('change', (name, value, state) => {});

//creating parameters
app.addParams(list|object);
app.addParam('my-param', {
	type: 'range',
	value: 0,
	min: 0,
	max: 100,
	step: 1
}, function onchange (value) {});
app.getParamValue('my-param');

Inspired by

Used by

1.4.6

9 years ago

1.4.5

9 years ago

1.4.4

9 years ago

1.4.3

9 years ago

1.4.2

9 years ago

1.4.1

9 years ago

1.4.0

9 years ago

1.3.23

9 years ago

1.3.22

10 years ago

1.3.21

10 years ago

1.3.20

10 years ago

1.3.19

10 years ago

1.3.18

10 years ago

1.3.17

10 years ago

1.3.16

10 years ago

1.3.15

10 years ago

1.3.14

10 years ago

1.3.13

10 years ago

1.3.12

10 years ago

1.3.11

10 years ago

1.3.10

10 years ago

1.3.9

10 years ago

1.3.8

10 years ago

1.3.7

10 years ago

1.3.6

10 years ago

1.3.5

10 years ago

1.3.4

10 years ago

1.3.3

10 years ago

1.3.2

10 years ago

1.3.1

10 years ago

1.3.0

10 years ago

1.2.2

10 years ago

1.2.1

10 years ago

1.2.0

10 years ago

1.1.13

10 years ago

1.1.12

10 years ago

1.1.11

10 years ago

1.1.10

10 years ago

1.1.9

10 years ago

1.1.8

10 years ago

1.1.7

10 years ago

1.1.6

10 years ago

1.1.5

10 years ago

1.1.4

10 years ago

1.1.3

10 years ago

1.1.2

10 years ago

1.1.1

10 years ago

1.1.0

10 years ago

1.0.0

10 years ago