The Siri wave replicated in a JS library.
JavaScript HTML
Permalink
Failed to load latest commit information.
tests Refactored all the things and included audio tests Oct 19, 2016
LICENSE Create LICENSE Sep 22, 2015
README.md Removed ios 9 Oct 19, 2016
index.html Removed ios 9 Oct 19, 2016
package.json 2.0.0 Oct 19, 2016
siriwave.js Added fallcback for container Oct 20, 2016
test.html Closed #14 Oct 8, 2016

README.md

image

Gitter

Have you ever thought on how to get the Siri wave effect on your website or mobile app?

SiriWaveJS is a library that easily allows you to get this effect.

Embed the script... and Surf!

LIVE EXAMPLE!

Usage

<div id="siri-container"></div>
<script src="/path/to/your/siriwave.js"></script>
<script>
var siriWave = new SiriWave({
    container: document.getElementById('siri-container'),
    width: 640,
    height: 200,
    /*
    speed: 0.2,
    color: '#000',
    frequency: 2
    */
});
</script>

Constructor options

style (String, default: 'none')

  • default - Default iOS9- style
  • ios9 - Style of for iOS9+

container (DOM Object)

The DOM container where the canvas to draw the wave is added.

[speed] (Number, from 0 to 1, default: 0.1)

The speed of the wave.

[amplitude] (Number, from 0 to 1, default: 1)

The noise (amplitude) of the wave.

[frequency] (Number, from 0 to N, default: 1)

The frequency of the wave.

Not available in iOS9 Style

[color] (String, Color, default: #fff)

The color of the wave, in hexadecimal form (#336699, #FF0)

Not available in iOS9 Style

[cover] (Boolean, default: false)

The canvas covers the entire width or height of the container.

[speedInterpolationSpeed] (Number)

The speed to interpolate the speed property.

[amplitudeInterpolationSpeed] (Number)

The speed to interpolate the amplitude property.

API

start()

Start the animation

stop()

Stop the animation.

setSpeed(newValue)

Set the new value of speed (animated)

setAmplitude(value)

Set the new value of amplitude (animated)

Projects/examples that uses this script

Some math

image