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

kzhz

v0.3.0

Published

kazoo: a shared modular synth that never stops, a desk, instruments and a mouth synth, in the terminal

Readme

kazoo

A studio of synthesizers that lives in the terminal.

  • The wall: one shared modular synth that never stops. People and Claude seats turn its knobs, move its cables, and add or take away modules while it plays. Every change is logged and can be undone.
  • The tree: every moment the wall has been, grown as a tree you can walk and go back to.
  • The desk: a mixer that every instrument plugs into, all on one tempo and one play/stop.
  • The instruments: 808, 303, CS-80, Minimoog, Juno, Prophet-5, a four-operator FM synth, a plucked string, glass and bells, and an arpeggiator.
  • The mouth: sing, hum or whistle into a synth, and play the other instruments with your voice.

Everything is real synthesis, not samples.

Install

kazoo is one command, kzoo, also installed as kazoo. It runs on macOS (Apple silicon or Intel).

npm install -g @tomwhiting/kzoo    # or try it once: npx @tomwhiting/kzoo wall
cargo install kzoo                 # from source, with Rust 1.89 or later

Install it (rather than run it through npx) for anything that keeps running: npx runs from npm's cache, and the wall and the studio start programs from where kzoo is.

Only @tomwhiting/kzoo (and its kzoo-darwin-* builds) on npm and kzoo on crates.io are this project, together with the kazoo-* crates it is built from.

Commands

kzoo wall               # the wall's console; it starts the wall if none is playing
kzoo tree               # the wall's tree
kzoo mix                # the desk
kzoo mouth              # the mouth synth
kzoo 808                # an instrument: 808, 303, cs80, mini, juno, prophet, dx, string, glass, arp
kzoo play               # text notation to notes or sound
kzoo studio up <name>   # start the desk and instruments of ~/.kazoo/studio/<name>.toml
kzoo mcp --seat <name>  # the wall for a Claude seat: an MCP server on stdio

To give a Claude seat the wall:

claude mcp add kazoo -- kzoo mcp --seat <Name>

Building

cargo build --release -p kzoo   # target/release/kzoo and target/release/kazoo
cargo nextest run --workspace

The workspace

| Crate | What it is | |---|---| | kazoo-cli (published as kzoo) | the one command | | kazoo-core | the audio library: synthesis, effects, analysis, the studio link | | kazoo-wall | the wall: its daemon, console, log and tree | | kazoo-tree | the tree you walk | | kazoo-mcp | the wall for Claude seats | | kazoo-mix | the desk | | kazoo-mouth | the mouth synth | | kazoo-808, kazoo-303, kazoo-cs80, kazoo-mini, kazoo-juno, kazoo-prophet, kazoo-dx, kazoo-string, kazoo-glass, kazoo-arp | the instruments | | kazoo-fx, kazoo-perc, kazoo-speech, kazoo-play, kazoo-host, kazoo-tui | effects, percussion voices, speech, notation, shared terminal plumbing, and the voice tracker |

The wall's design is in design/wall/DESIGN.md, and the instruments' in studio/.

Licence

kazoo is free software under the GNU Affero General Public License, version 3 or later (see LICENSE).