a cross-platform networking library that works in the browser
HumbleNet is a cross platform networking library that utilizes WebRTC and WebSockets to handle network communication.
Using WebRTC and Websockets allows HumbleNet to support not only traditional platforms such as Windows, OS X, and Linux, but also web platforms such as ASM.JS / Emscripten.
HumbleNet is a simple clean C based API that allows for wrappers to be written for any language that offers C binding.
We have several demos to show off integrating HumbleNet.
This is a simple "chat" app in the tests folder for both C and C#. The C app will run on Windows, MacOS X, Linux, and Emscripten. The C# will run on .NET or Mono.
We have a port of Quake2 (Based on R1Q2) that includes HumbleNet networking and runs on Windows, Mac OS X, Linux and Emscripten.
We have a port of Quake3 (Based on QuakeJS) that includes HumbleNet networking and runs on Windows, Mac OS X, Linux and Emscripten.
apt-get
.brew
.flatc
compiler executable.flatc
exists, generally a build
dir) into your PATH
, so the compiler can be accessed anywhere.go version
;go1.9.1 darwin/amd64
.build
folder (just to better organize the output code) and enter the directory;cmake ..
(with 2 dots), this will configure into the directory all files needed to build the library;flatbuffers
inside the include
dir;<HumbleNetDir>/build
folder;flatbuffers
folder into the humblenet
dir, along side the humblepeer_generated.h
file;flatbuffers.h
file, that is a source dependency.build
folder you can run the make
command alone, and it will try to build all code, or with the desired target
, example:
make all
: will build all executables and libraries;make clean
: will clean the directory, but mantain the config files;make humblenet_test_peer
: build the test peer found in <HumberNetDir>/tests/test_peer.cpp
;make peer-server
: will build the test server found in <HumbleNetDir>/src/peer-server
;