npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

web_audio_player

v3.0.0

Published

Audio player using Web Audio API.

Downloads

1

Readme

Web Audio Player

JS audio player, using Web Audio API.

Synopsis

The player uses native JavaScript features. No flash, no HTML5 audio elements.

Features:

  • No UI. Yeap, it's a feature. You can create any markup you wish, style it as you wish, and just use JS methods and events to control the playback.
  • 10-bands equalizer.
  • Rememberable settings using localStorage.
  • Playlists.
  • URL mirrors. Instead of one URL you can supply an array of them. The first one that resolves will be decoded.
  • Easy events subscription.
  • Time markers. These are callbacks that are executed after specified amount of playback time.
  • Also the volume control, repeatable lists, play / stop / pause / seek / next / previous / shuffle methods, various time getters, and many more.

To submit bug reports and feature suggestions, or to track changes: https://github.com/mikeshiyan/WebAudioPlayer/issues

Installation and requirements

This library has no dependencies on other libraries. But it depends on native JavaScript features, like Web Audio API. So make sure your browser supports them.

There are multiple ways to download the library to your project.

  • With NPM:

    npm install --save web_audio_player
  • With Bower:

    bower install --save web_audio_player
  • With JSPM:

    jspm install web_audio_player=github:mikeshiyan/WebAudioPlayer
  • Downloading or cloning the library directly from GitHub.

Whichever way you choose to install, you'll get a 'dist' directory with multiple JS files. Each of them is the full library with the same functionality, just in different format. So only one of them needs to be included in your project:

  • web_audio_player.es6.js is the most "human-readable" one. Uses strict ECMAScript 2015 language syntax. Defines the global WebAudioPlayer class.

  • web_audio_player.js is the transpiled version of the above for browsers that do not support ECMAScript 2015 syntax yet. Again the WebAudioPlayer class is available in the global scope.

  • web_audio_player.min.js is the minified version of the above to load less bytes by browsers. The WebAudioPlayer class is still available as the global one.

  • web_audio_player.common.js is the CommonJS module. Based on the transpiled but not minified version above. To get the WebAudioPlayer class in your code:

    var WebAudioPlayer = require('web_audio_player');

Usage

Whichever distributable file you choose to include, you get a WebAudioPlayer class, which you can instantiate like so:

var player = new WebAudioPlayer();

Let this instance be a single for your project - store the variable somewhere your code will be able to get it, to not instantiate a new object.

Now you may use public methods of the library to load audio files, control the playback, etc. See demo and the API.