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

muxws

v0.3.1

Published

Multiplexed, cancellable, bidirectional streams over one WebSocket

Readme

muxws

HTTP/2 and HTTP/3 stream semantics over a WebSocket. Many independent, cancellable, bidirectional streams on one socket, either end able to open one - the model HTTP/2 and HTTP/3 already settled, without needing QUIC or an HTTP/3 stack. The wire format is the product; Python and TypeScript are the two ports that exist today, and SPEC.md plus conformance/ are what a third is written from.

The mimicry is of semantics, not transport: one TCP connection means one global message order and no per-stream loss recovery - the rationale says what is and is not copied, and the comparison accounts for it frame by frame. muxws is not a router, not a serializer of domain objects, not an authentication mechanism, not a durable store and not an RPC framework.

Install

pip install muxws                       # extras: [starlette], [websockets], [msgpack]
npm install muxws                       # optional peers: ws, @msgpack/msgpack

Documentation

docs.velis.si/muxws is the manual - or build it yourself with npm run docs:dev.

| | | |---|---| | Server and client in three files | Getting started | | Every public symbol, both languages | API reference | | The normative rules, and the fixtures a third port is written from | SPEC.md, conformance/ |

Status

Alpha - the first releases. Two versions that move independently: the wire is already at its first generation and frozen there (muxws.v1.<codec> is the subprotocol, and v1 stays until a breaking change earns a new one), while the package carries a leading zero because none of this has been through a real deployment yet. 1.0 is what the first confirmed production use earns. Python package muxws (PyPI); npm package muxws, browser entry plus the muxws/node and muxws/msgpack subpaths.

Licence

MIT. Copyright © 2025 Jure Erznožnik.