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

sfxbrew

v0.1.3

Published

Procedural game sound effects for humans and AI agents: Eastern (wuxia/xianxia) and general SFX, rendered locally to WAV or drop-in JavaScript. CLI + MCP server.

Readme

sfxbrew

Procedural game sound effects for humans and AI coding agents. Eastern (wuxia / xianxia) sounds plus the usual game sounds, synthesized locally, with no API keys, no network and no per-call cost.

  • 45 presets. Eastern instruments: guqin, pipa, erhu, bamboo flute, temple bell, gong, wind chime, wooden fish, war drum. Xianxia magic: sword qi, spell cast, heavenly thunder, lightning, breakthrough, talisman, alchemy, qi gathering. Combat: hit, explosion, laser, whoosh, arrow, sword clash, shield block. UI and items: click, confirm, error, notification, page turn, typing, coin, pickup, power-up, level up, chest open. Character: jump, land, footsteps on stone and grass. Ambience: rain, wind, campfire, stream, cave drip, monster growl
  • Every generation is a fresh variation; a seed reproduces it exactly
  • Output: 16-bit WAV, or a ~7 KB dependency-free JavaScript snippet that plays the same sound with Web Audio
  • Free for commercial use, no attribution required for the sounds you generate

For AI agents (MCP)

Claude Code:

claude mcp add sfxbrew -- npx -y sfxbrew mcp

Other MCP clients (Cursor, Windsurf, Claude Desktop …):

{
  "mcpServers": {
    "sfxbrew": { "command": "npx", "args": ["-y", "sfxbrew", "mcp"] }
  }
}

Tools:

| Tool | What it does | |---|---| | list_presets | Presets and what each one is good for | | generate_sfx | Write one or more WAV variants (and optionally a .js file with play functions) | | render_patch | Render a hand-tuned patch JSON | | get_js_code | One drop-in JS snippet with playX() functions for several sounds | | export_pack | A game-engine folder: WAV variations or seamless loops + Godot .tres, Unity script, web player, README |

Then just ask: "add a coin sound and a hit sound to my game".

Agent skill

A free SKILL.md that teaches your agent when and how to use SFX Brew: skills/sfxbrew/SKILL.md, also installable from Agensi.

Seamless loops and engine packs

Ambience and sustained sounds (rain, wind, campfire, stream, cave drip, thunder, wind chimes, war drums, monster growl) can be rendered as seamless loops of 10 to 120 seconds. The loop is stitched from several slightly different takes with equal-power crossfades, so it doesn't repeat every few seconds, and the WAV carries a loop point that Godot, FMOD, Wwise and GameMaker pick up automatically.

An engine pack is a folder (or a zip from the web editor) with WAV variations or loops plus:

  • godot/<name>.tres: an AudioStreamRandomizer that plays a random variation each time (Godot 4)
  • unity/SfxBrewPlayer.cs: drop on a GameObject, drag in the clips, call Play() (or tick Loop)
  • web/<name>.js: plain Web Audio player, playX() or startX() / stopX() for loops

CLI

npx sfxbrew list
npx sfxbrew coin --out assets/sfx/coin.wav
npx sfxbrew swordQi --count 5 --out assets/sfx/sword.wav
npx sfxbrew hit --seed 42 --js src/sfx.js
npx sfxbrew render my-patch.json --out boom.wav
npx sfxbrew rain --loop 30 --out assets/sfx/rain-loop.wav   # seamless loop with a WAV loop point
npx sfxbrew pack swordQi --count 8 --out .                   # Godot / Unity / web pack
npx sfxbrew pack campfire --loop 20 --out .

Sound packs

Ready-made WAV packs: Xianxia & Wuxia Game Sound Pack on itch.io (44 sounds), or download any pack as a ZIP from sfxbrew.com/sounds.

Library

const sfx = require('sfxbrew');
const { patch, seed } = sfx.generate('coin');
const { bytes } = await sfx.renderWav(patch);

Browser editor

Tweak any sound with sliders and export WAV / JS in the web editor (same engine).

License

Code: MIT. Generated sounds: yours, free for any use.

A few presets (war drum, lightning, gong, erhu) use short CC0 recordings from Freesound, listed with their recordists in samples/CREDITS.md.