wisp-server-node
TypeScript icon, indicating that this package has built-in type declarations

1.1.7 • Public • Published

wisp-server-node

A wisp protocol server implementation, written in NodeJS.

Usage ✨

You can integrate it into your existing node:http server pretty easily by just adding this to your code

httpServer.on("upgrade", (req, socket, head) => {
    wisp.routeRequest(req, socket, head);
});

Migrating while dual wielding bare-server-node 🤺

If you're migrating from bare server but want to retain both, simply use

httpServer.on("upgrade", (req, socket, head) => {
    if (bare.shouldRoute(req)) {
        bare.routeUpgrade(req, socket, head);
    } else {
        wisp.routeRequest(req, socket, head);
    }
});

wisp-server-node doesn't need to handle regular requests, just upgrade events.

Is it fast? 🚀

It's good enough for testing, it's easy to integrate into your existing app, and maybe it's good enough for light prod usage, but chances are if you're at the scale where you're running a reverse proxy, you should use epoxy-server which will deliver better performance at a lower memory footprint

Is it API stable? 🐎

I don't personally plan on breaking api compatibility, so unless a serial killer is holding my family at gun point under the condition of breaking wisp-server-node's API, probably.

Is it stable stable? 🐎🐎

No. I'm sure you can make it crash given enough effort, but it's pretty okay stability wise for your average TCP request coming from epoxy client or libcurl.js.

Readme

Keywords

none

Package Sidebar

Install

npm i wisp-server-node

Weekly Downloads

2,045

Version

1.1.7

License

AGPL-3.0-only

Unpacked Size

71.5 kB

Total Files

24

Last publish

Collaborators

  • programmerin-wonderland
  • percslol
  • vyslix