Wisp is designed to be a low-overhead, easy to implement protocol for proxying multiple TCP and UDP sockets over a single websocket connection.
For the protocol specifications, see protocol.md.
There are two major versions of Wisp:
- Wisp V1 - The simpler version which is easier to implement, but without advanced features such as authentication.
- Wisp V2 - Adds a handshake step which allows for adding protocol extensions, password and key authentication, MOTD messages, and more.
- wisp-js/client - by @ading2210
- epoxy-tls (Rust) - by @r58Playz
- wisp-js/server - by @ading2210
- epoxy-server (Rust) - by @r58Playz
- wisp-server-python - by @ading2210
- Woeful (C++) - by @FoxMoss
- wisp-server-workers - by @r58Playz
- wisp-js - by @ading2210
- wisp-mux (Rust) - by @r58Playz
- WispMark - A benchmarking tool for Wisp protocol implementations.
- libcurl.js - A port of libcurl to WebAssembly, for proxying HTTPS requests from the browser with full TLS encryption
- epoxy-tls - An encrypted proxy for browser javascript, written in Rust.
- Wasmer SDK - A WebAssembly sandbox based on WASIX that runs software from the Wasmer registry.
- Scramjet - An experimental web proxy that aims to be the successor to Ultraviolet.
- Whisper - A client for Wisp that exposes the connection over a TUN device.
- v86 - x86 PC emulator and x86-to-wasm JIT, running in the browser
- Puter - An advanced, open-source internet operating system designed to be feature-rich, exceptionally fast, and highly extensible
- browser.js - A browser environment for the web, based on Scramjet.
- Wispcraft - A mod for Eaglercraft, letting you play on online Minecraft Java Edition servers in your browser.
- Firefox WASM - A port of the Gecko engine to WebAssembly so that Firefox can be loaded inside another browser
- wisp2socks - A client for Wisp that exposes the connection over a socks connection.
This repository is licensed under the Creative Commons Attribution 4.0 International license. The implementations listed above use different licenses.
The Wisp protocol specifications were written by @ading2210.
