Nocturnally Psychologizing Millipede

    TypeScript icon, indicating that this package has built-in type declarations

    1.0.10 • Public • Published

    Swave Quality Gate Status

    Swave is a Javascript audio player library with waveform visualization.

    Live Demo:


    npm install swave


    let swave = new Swave({audioUrl: 'url...'});;

    Swave uses Web Audio APIs for visualizations, HTMLAudioElement for audio streaming and a Canvas element to draw the sound bars.
    The first argument of the constructor is the html element where the canvas should be drawn.
    The second argument is a configuration object:

    • audioUrl: required, the url for the audio to be played
    • autoPlay: false by default
    • crossOrigin: "anonymous" by default
    • showControls: false by default. If enabled, will display the audio element's playback controls

    Swave exposes several methods which you can use to build an audio player:

    • play(): starts playing the audio
    • stop(): stops playing the audio
    • pause(): pauses the current playing audio
    • setVolume(number): values between 0.1 and 1
    • enableVisualization(HTMLElement): shows the sound bars
    • disableVisualization(): hides the sound bars
    • getDuration(): the length of the audio, in seconds
    • setCurrentTime(number): set the current time of the audio
    • getCurrentTime(): get the time of the audio as it plays
    • changeAudio(string): the new url of the audio


    If you find any bugs or have ideas of how Swave can be improved, please open an issue at
    If you would like to contribute code please have a look at our open issues, pick something you like and have fun :)

    • clone the repo
    • npm install to install the dev dependencies
    • npm run start will start the webpack dev server
    • npm run build will build the production bundle
    • fix a bug, implement a feature
    • open a pull request


    Cosmin Seviciu


    npm i swave

    DownloadsWeekly Downloads






    Unpacked Size

    174 kB

    Total Files


    Last publish


    • bogdan.cornianu
    • zetcoby