react-frequency
v1.1.1
Published
A simple React component and hook which creates a frequency and play it !
Downloads
94
Maintainers
Readme
react-frequency
A simple React component and hook which emits a frequency generated thanks to the AudioContext API of JavaScript !
Installation
npm
npm install react-frequency
yarn
yarn add react-frequency
Usage
Hook
import React from 'react';
import { useFrequency } from 'react-frequency';
const App = () => {
const { toggle, start, stop, playing } = useFrequency({
hz: 174,
type: "center",
gain: 1,
oscillator: "sine"
})
return (
<div>
<h1>playing: { playing ? 'true' : 'false' }</h1>
<button onClick={toggle}>toggle</button>
<button onClick={start}>start</button>
<button onClick={stop}>stop</button>
</div>
)
};
The useFrequency
hook return 3 functions and 1 boolean :
functions
toggle
: start and stop the frequencystart
: start the frequencystop
: stop the frequency
boolean
playing
: reading state of the frequency
Component
import React from 'react';
import { Frequency } from 'react-frequency';
const App = () => (
<Frequency
hz={174}
type="center"
gain={1}
oscillator="sine"
/>
);
The component does not return any elements and emits automatically the frequency.
Props
The only props required is hz.
| Name | Default | Description |
| ------------- |:-------------:| -----:|
| hz
| required
number
| The frequency corresponds to the number of vibrations per second.The human ear hears values ranging from 20Hz to 20,000Hz |
| type
| not required
"center" | The type defines from which side the sound will come out.Values can be "left", "center" or "right" |
| gain
| not required
1 | The gain defines the ability to increase the strength of a signal.Value is float between 0 and 1 |
| oscillator
| not required
"sine" | It specifies what shape of waveform the oscillator will output.Values can be "sine", "square", "sawtooth" or "triangle" |