All Projects → ggerganov → Imgui Ws

ggerganov / Imgui Ws

Licence: mit
Dear ImGui over WebSockets

Projects that are alternatives of or similar to Imgui Ws

Bimpy
imgui for python
Stars: ✭ 144 (-12.73%)
Mutual labels:  imgui
Websocket Kit
WebSocket client library built on SwiftNIO
Stars: ✭ 155 (-6.06%)
Mutual labels:  websockets
Webssh
🌱 Web based ssh client
Stars: ✭ 2,520 (+1427.27%)
Mutual labels:  websockets
Rapidgui
Unity OnGUI(IMGUI) extensions for Rapid prototyping/development
Stars: ✭ 144 (-12.73%)
Mutual labels:  imgui
Socktrader
🚀 Websocket based trading bot for 💰cryptocurrencies 📈
Stars: ✭ 152 (-7.88%)
Mutual labels:  websockets
Emberclear
Encrypted Chat. No History. No Logs.
Stars: ✭ 157 (-4.85%)
Mutual labels:  websockets
Wt Tracker
High-performance WebTorrent tracker
Stars: ✭ 144 (-12.73%)
Mutual labels:  websockets
Wasync
WebSockets with fallback transports client library for Node.js, Android and Java
Stars: ✭ 162 (-1.82%)
Mutual labels:  websockets
Pychat
webchat via WebSockets/WebRTC that allows messaging/video call/screen sharing
Stars: ✭ 152 (-7.88%)
Mutual labels:  websockets
Codenames
Stars: ✭ 159 (-3.64%)
Mutual labels:  websockets
Minchat
基于tomcat 7. 0.56 websocket的在线客服系统
Stars: ✭ 146 (-11.52%)
Mutual labels:  websockets
Imguifontstudio
Font Helper Gui Tool for programming
Stars: ✭ 149 (-9.7%)
Mutual labels:  imgui
Nodebb
Node.js based forum software built for the modern web
Stars: ✭ 12,303 (+7356.36%)
Mutual labels:  websockets
Websocket
WSServer is a fast, configurable, and extendable WebSocket Server for UNIX systems written in C (C11).
Stars: ✭ 144 (-12.73%)
Mutual labels:  websockets
Dashboard.spatie.be
The source code of dashboard.spatie.be
Stars: ✭ 1,916 (+1061.21%)
Mutual labels:  websockets
Wave Particles With Interactive Vortices
A dx12 river renderer using wave particles with interactive vortices.
Stars: ✭ 144 (-12.73%)
Mutual labels:  imgui
Kalm.js
The socket manager
Stars: ✭ 155 (-6.06%)
Mutual labels:  websockets
Django Loci
Reusable Django app for storing geographic and indoor coordinates. Maintained by the OpenWISP Project.
Stars: ✭ 164 (-0.61%)
Mutual labels:  websockets
Node Jet
Realtime Message Bus for the Web. Javascript Implementation
Stars: ✭ 162 (-1.82%)
Mutual labels:  websockets
Spring Boot Examples
个人学习 SpringBoot2.x 写的一些示例程序,目前正在持续更新中.....
Stars: ✭ 159 (-3.64%)
Mutual labels:  websockets

Actions Status

imgui-ws

Dear ImGui over WebSockets

This is a small library that allows to stream a Dear ImGui scene to multiple WebSocket clients at once. This is achieved by sending Dear ImGui's DrawData structure which is then rendered in the browser using WebGL. To reduce the amount of network traffic, we send only the diffs between sequential frames (for more info - see #1).

Live examples

These are sample applications using imgui-ws, running on a Linode 2GB instance:

Example URL Description
demo-null http://imgui-ws.ggerganov.com:5001/ Dear ImGui's demo app
basic-null http://imgui-ws.ggerganov.com:5002/ Basic read-only data visualization
textures-null http://imgui-ws.ggerganov.com:5003/ Textures example

Tools

There are a few tools that help with the development and the optimization of the ImDrawData compression:

  • record-sdl2

    Record the ImDrawData for all rendered frames in a Dear ImGui session

    ./bin/record-sdl2 session.imdd
    
  • replay-sdl2

    Replay a session recorded with the record-sdl2 tool

    ./bin/replay-sdl2 session.imdd
    
  • compressor-benchmark

    Run the available ImDrawData compression algorithms on various pre-recorded Dear ImGui sessions. Reports compression ratio, average required bandwidth and cpu utilization:

    ./bin/compressor-benchmark session0.imdd [session1.imdd] [session2.imdd] [...]
    

Building & running

# build
git clone https://github.com/ggerganov/imgui-ws --recursive
cd imgui-ws && mkdir build && cd build
cmake ..
make

# running
./bin/demo-null 5000

Open some browsers and point them to http://localhost:5000/

Dependencies

Screenshot

imgui-ws

Credits

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].