Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.
Sign upC++CJavaScriptMakefile
Branch:master
Clone or download
Launching GitHub Desktop...
If nothing happens,download GitHub Desktop and try again.
Launching GitHub Desktop...
If nothing happens,download GitHub Desktop and try again.
Launching Xcode...
If nothing happens,download Xcode and try again.
Launching Visual Studio...
If nothing happens,download the GitHub extension for Visual Studio and try again.
Type | Name | Latest commit message | Commit time |
---|---|---|---|
Failed to load latest commit information. | |||
![]() | docs | Update docs regarding CompressOptions | |
![]() | examples | Update uWS, pass Autobahn with pubsub SSL/non-SSL | |
![]() | misc | Add files via upload | |
![]() | src | Port to Node.js 10, 11, 12, 13 | |
![]() | tests | Pass Autobahn again | |
![]() | uWebSockets @ f358601 | Update uWS | |
![]() | .gitattributes | Don't include js files in language stats | |
![]() | .gitmodules | Add uWebSockets submodule | |
![]() | .travis.yml | Update .travis.yml | |
![]() | LICENSE | Apache 2.0 license | |
![]() | Makefile | Move build logic to C program, add ARM64 target | |
![]() | README.md | Update README.md | |
![]() | build.c | Port to Node.js 10, 11, 12, 13 |
README.md
µWebSockets.js™ (it's "micro") is simple, secure[1]& standards compliant[2]web I/O for the most demanding[3]of applications.
•TypeScript docs •Read more & user manual (C++ project)
© 2016-2019, >39,632,272 downloads
In a nutshell.
Think of it as a complete replacement to both Express.js and Socket.IO, written entirely in C/C++ for maximum performance and reliability. There are tons ofexamples but here's the gist of it all:
/* Non-SSL is simply App()*/require('uWebSockets.js').SSLApp({/* There are tons of SSL options*/ key_file_name:'misc/key.pem', cert_file_name:'misc/cert.pem', }).ws('/*', {/* For brevity we skip the other events*/message: (ws,message,isBinary)=> {let ok=ws.send(message, isBinary); } }).any('/*', (res,req)=> {/* Let's deny all Http*/res.end('Nothing to see here!'); }).listen(9001, (listenSocket)=> {if (listenSocket) {console.log('Listening to port 9001'); } });
Ready all thrusters.
Install withnpm install uNetworking/uWebSockets.js#v16.4.0
or any suchrelease. No compiler needed.
Pay what you want.
Commercially developed on a sponsored/consulting basis; BitMEX, Bitfinex and Coinbase are current or previous sponsors. Contactme, the author for support, feature development or consulting/contracting.
Know thy legal matters.
µWebSockets.js is intellectual property licensed Apache 2.0 with limitations on trademark use. Forks must be clearly labelled as such and must not be confused with the original.