Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

https://github.com/jamesseanwright/wax

An experimental, JSX-compatible renderer for the Web Audio API
https://github.com/jamesseanwright/wax

audionode audioparam jsx jsx-elements jsx-renderer jsx-syntax pragma react transform-react-jsx web-audio web-audio-api

Last synced: 2 months ago
JSON representation

An experimental, JSX-compatible renderer for the Web Audio API

Lists

README

        

# Wax

[![Travis CI status](https://api.travis-ci.org/jamesseanwright/wax.svg?branch=master)](https://travis-ci.org/jamesseanwright/wax) [![Code coverage status](https://coveralls.io/repos/github/jamesseanwright/wax/badge.svg?branch=master)](https://coveralls.io/github/jamesseanwright/wax?branch=master) [![npm version](https://badge.fury.io/js/wax-core.svg)](https://www.npmjs.com/package/wax-core)

An experimental, JSX-compatible renderer for the Web Audio API. I wrote Wax for my [Manchester Web Meetup](https://www.meetup.com/Manchester-Web-Meetup) talk, [_Manipulating the Web Audio API with JSX and Custom Renderers_](https://www.youtube.com/watch?v=IeuuBKBb4Wg).

While it has decent test coverage and is stable, I still deem this to be a work-in-progress. **Use in production at your own risk!**

```jsx
/** @jsx createAudioElement */

import {
createAudioElement,
renderAudioGraph,
AudioGraph,
Oscillator,
Gain,
StereoPanner,
Destination,
setValueAtTime,
exponentialRampToValueAtTime,
} from 'wax-core';

renderAudioGraph(






);
```

## Example Apps

Consult the [example](https://github.com/jamesseanwright/wax/tree/master/example) directory for a few small example apps that use Wax. The included [`README`](https://github.com/jamesseanwright/wax/blob/master/example/README.md) summarises them and details how they can be built and ran.

## Documentation

* [Introduction](https://github.com/jamesseanwright/wax/blob/master/docs/000-introduction.md)
* [Getting Started](https://github.com/jamesseanwright/wax/blob/master/docs/001-getting-started.md)
* [Manipulating Audio Parameters](https://github.com/jamesseanwright/wax/blob/master/docs/002-audio-parameters.md)
* [Building Complex Graphs with ``s](https://github.com/jamesseanwright/wax/blob/master/docs/003-aggregations.md)
* [Updating Rendered ``s](https://github.com/jamesseanwright/wax/blob/master/docs/004-updating-audio-graphs.md)
* [Interop with React](https://github.com/jamesseanwright/wax/blob/master/docs/005-interop-with-react.md)
* [API Reference](https://github.com/jamesseanwright/wax/blob/master/docs/006-api-reference.md)
* [Local Development](https://github.com/jamesseanwright/wax/blob/master/docs/007-local-development.md)