Skip to content
A 2-channel waveform function generator in your web browser
HTML JavaScript CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
.gitignore
LICENSE
LRWaveIcon32.png
LRWaveLogo128.png
README.md
app.js
app.scss
index.html
package.json
webpack.config.js

README.md

LRWave

A web browser becomes a 2-channel function generator

Available at: https://roger-random.github.io/lrwave/

LRWave Icon

Requirements

This web app uses the W3C Web Audio API to generate waveforms sent to left and right audio output channels. Since it is using API and hardware designed for audio, it can only generate waveforms in the human audible range. No 2MHz signal here!

If a web browser fails to produce waveforms with this app, check to see if that browser has web audio API support on caniuse.com.

Development

This web app was built using Google's Material Design Components for Web and closely follows the pattern used by MDC Web's Getting Started sample app, including the use of Node.js and tools such as webpack.

  • Setup: Install a recent version of Node.js. Clone this repository, and run npm install
  • Test: Run npm start to launch this app in a development web server. It will monitor changes and automatically rebuild upon change.
    • Configure listen port with export PORT=8080 (or replace 8080 with port of your choice.)
    • Configure listen IP with export IP=0.0.0.0 (or replace 0.0.0.0 with IP address of your choice.)
  • Publish: Run npm run build to generate bundled JavaScript and CSS files fit for publishing.
  • Release: Copy updated index.html and built files bundle.css and bundle.js into \docs\ and publish all files in that subdirectory.

History

  • 2018/12: Version 1.0

Updates

See development blog.

You can’t perform that action at this time.