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

superkabel

v0.3.2

Published

a language to control supercollider's synth on the web.

Downloads

655

Readme

superkabel

a language to control supercollider's synth on the web.

super kabel is still EXPERIMENTAL, so tread carefully..

play with the superkabel repl on https://superkabel.salat.dev/

usage

here's how to run a superkabel patch in an html file:

<!doctype html>
<button id="playButton">play</button>
<button id="stopButton">stop</button>
<script type="module">
  import {
    registerLanguage,
    runPatch,
    stopPatch,
  } from "https://unpkg.com/[email protected]/superkabel/src/index.js";
  registerLanguage();

  function patch() {
    // sprinkler, ported from sc examples
    LFPulse(0.09, 0, 0.16)
      .mul(10)
      .add(7)
      .LFPulse(0, 0.25)
      .mul(0.1)
      .mul(WhiteNoise())
      .BPZ2()
      .out();
  }

  playButton.onclick = () => runPatch(patch);
  stopButton.onclick = () => stopPatch();
</script>

that's all you need! save this as index.html and in the same folder, run:

npx superkabel # open server with coop/coep headers

..then open http://localhost:7070/ and you should hear the sprinkler patch when clicking play.

because superkabel uses shared memory, when serving an application that uses it, you need to have a cross-origin isolated document. that's what npx superkabel does for you for quick local testing.

superkabel server

run npx superkabel to run the superkabel repl on any machine that runs node. to make sure it works offline, run npm i -g superkabel, then run superkabel. the server will serve any files below the folder where you run it, so you can access files from disk. the server also serves the superkabel lib under /superkabel so it works without internet. you can bring your own index.html for a custom ui.

on npm

superkabel is available on npm:

npm i superkabel

building with vite

to make vite build behave, add this to your vite.config.js:

export default { worker: { format: "es" } };

learn more

the development of superkabel started as a series of blog posts:

publishing to npm

npm pack --dry-run
npm version patch
npm login
npm publish
git push && git push --tags