This project showcases a collection of audio visualisers built with React, TypeScript, Vite, and CSS Modules. The visualisers use the Web Audio API to analyse audio frequency data in real time and render animated graphics onto canvases.
- Vite
- React
- TypeScript
- Node
- CSS Modules
- Renders colourful animations around a central point.
- Uses an
AnalyserNodeto capture frequency data from an audio source. - Each bar/orb represents the magnitude of a frequency bin.
- Includes multiple arcs and transformations per frequency bin to create a layered visual.
- Trails are created with semi-transparent background fills, giving a ghosting effect.
Both components rely on an AnalyserNode from the Web Audio API, which provides access to live frequency data from audio input.
-
Frequency Analysis
Theanalyser.getByteFrequencyData()method fills aUint8Arraywith current frequency values. -
Rendering Loop
An animation loop (requestAnimationFrame) updates the canvas frame by frame using the frequency data. -
Visual Mapping
- In VisualiserBars, frequency bins are mapped to bars with height based on loudness.
- In VisualiserWeird, data points create orbs at varying distances and sizes, forming radial shapes.
-
Styling & Animation
Each component uses CSS Modules for styling and give the canvas a container layout.