https://github.com/benji6/virtual-audio-graph
:notes: Library for declaratively manipulating the Web Audio API
https://github.com/benji6/virtual-audio-graph
audio audio-worklet audiocontext audiograph audionode audioparam audioworklet declarative functional-programming react webaudio webaudio-api webaudioapi
Last synced: 2 months ago
JSON representation
:notes: Library for declaratively manipulating the Web Audio API
- Host: GitHub
- URL: https://github.com/benji6/virtual-audio-graph
- Owner: benji6
- License: mit
- Created: 2015-06-15T14:56:43.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2024-10-01T10:41:29.000Z (9 months ago)
- Last Synced: 2024-10-02T07:09:17.926Z (9 months ago)
- Topics: audio, audio-worklet, audiocontext, audiograph, audionode, audioparam, audioworklet, declarative, functional-programming, react, webaudio, webaudio-api, webaudioapi
- Language: TypeScript
- Homepage: https://virtual-audio-graph.netlify.app
- Size: 3.89 MB
- Stars: 355
- Watchers: 10
- Forks: 29
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
Awesome Lists containing this project
- awesome-end-user-programming - virtual-audio-graph - Library for declaratively manipulating the Web Audio API (Opensource Projects)
- awesome-webaudio - virtual-audio-graph - Library for declaratively manipulating the Web Audio API. (Packages / Libraries)
README
# virtual-audio-graph
[](http://badge.fury.io/js/virtual-audio-graph)


[](https://app.netlify.com/sites/virtual-audio-graph/deploys)## Overview
Small and dependency-free library for declaratively manipulating the Web Audio API.
virtual-audio-graph manages the state of the audio graph so this does not have to be done manually. Simply declare what you would like the audio graph to look like and virtual-audio-graph takes care of the rest.
Inspired by [virtual-dom](https://github.com/Matt-Esch/virtual-dom) and [React](https://github.com/facebook/react).
## Installation
```bash
npm i -S virtual-audio-graph
```virtual-audio-graph is distributed as a bundled CJS module by default, however, there is also a `module` property in its `package.json` so tools like [Rollup](https://github.com/rollup/rollup) and [Webpack](https://github.com/webpack/webpack) can consume an ES modules build.
## Size
virtual-audio-graph is designed to be small and weighs in at 11.9kB minified (3.3kB minified & gzipped) according to [bundlephobia](https://bundlephobia.com) (https://bundlephobia.com/[email protected]).
## Docs
**[First check out the virtual-audio-graph guide](https://virtual-audio-graph.netlify.app)** for working examples and to understand how the library works.
Then see the [API docs for all supported virtual audio node factory functions](docs/standard-nodes.md).
For an example of virtual-audio-graph working in a real application you can take a look at [Andromeda](https://github.com/benji6/andromeda) which is one of my other projects.