Last modified 3 months ago
Last modified on 02/13/13 04:05:07
![]() |
|
| libwebsockets: 30fps realtime canvas | test apps communicate in realtime between browsers |
libwebsockets
Libwebsockets is a lightweight pure C library built to use minimal CPU and memory resources, and provide fast throughput in both directions.
- Latest Release 1.2: see changelog... http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/tree/changelog?id=v1.2-chrome26-firefox18
- Provides server and client APIs for v13 websocket protocol, along with http[s] serving
- Can be configured to use OpenSSL or CyaSSL to provide fully encrypted client and server links including client certificate support
- It's a full autotools and optionally CMake based project that has been used in a variety of OS contexts including Linux (uclibc and glibc), ARM-based embedded boards, MIPS / OpenWRT, Windows, Android, Apple iOS and even Tivo.
- It includes a stub webserver that is enough to deliver your scripts to the browser that open websocket connections back to the same server, so it can solve the entire server side, ws://, wss://, http:// and https:// in one step. Apache, Java or any other server-side support is not needed.
- Chrome 26 and Firefox 18 are supported, including the webkit websocket compression extension.
- Architectural features like zero-copy for payload data and FSM-based protocol parsers make it ideal for realtime operation on resource-constrained devices
- Websocket + HTTP serving for ARM: code + data + bss combined is under 15K, plus 12K at init to support up to 1024 fds, and 112 bytes per connection... minimal single client case in < 35KBytes total including library footprint
- Valgrind-clean, reliable and robust
- It's licensed under LGPL2 + static link exception and comes with test servers that demonstrate client and server communication between the test apps and a test browser applet.
Getting the sources
You can get the latest sources from git
git clone git://git.libwebsockets.org/libwebsockets
or browse the git repo at http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/
Documentation
- Build and configuration (in git tree): http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/tree/README.build
- Test App usage and features: http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/tree/README.test-apps
- Coding apps using the library: http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/tree/README.coding
- HTML API reference (in git tree, generated from code): http://libwebsockets.org/libwebsockets-api-doc.html
- What does a complete HTML + Websockets server look like using libwebsockets? http://git.libwebsockets.org/cgi-bin/cgit/libwebsockets/tree/test-server/test-server.c
Support
- Register at Trac here http://libwebsockets.org/trac/register
- Register for the libwebsockets mailing list http://ml.libwebsockets.org/mailman/listinfo/libwebsockets


