Web GUI for Gazebo

Hi All,

I have been looking into a web client for Gazebo and found on the feature comparison that currently there is no support for such a feature. However, Classic Gazebo supported a web GUI with the GzWeb project.

Is there currently a development effort to release a web client for the latest Gazebo version? or are there no plans to release such a feature?


I was also wondering why is it marked as not available in the comparison chart. There has been https://app.gazebosim.org/visualization since at least Dome.

I wonder if that is because it needs to count as physics plugin include so it can be marked as available? Right now, it’s just like a model viewer without anything else


Web visualization is marked as incomplete because it’s still in beta. However, you can give the latest version a try.

Here is the NPM package
Here is the gzweb code
Here is how you’d go about using it on a website


Thank you for the great answers!

The last link to GitHub was very helpful, I managed to set up the beta version of GzWeb2 and I will start using it.

When do you expect GzWeb2 to leave the beta status? and is there a way to support this process?

Thanks for trying it out. One way to help is to submit issues, either big reports or feature requests.

Of course, pull requests are also most welcome.

I’m expecting it to leave beta before the end of 2022. We are currently testing out against Garden, and wrapping up a few minor additions.


Sounds great, I am looking forward to the first official release!

I installed the beta npm package, but couldn’t find out the classic gzweb equivalent to starting a stand alone client process to host a web server to point my browser to the local host and port to visualize a world loaded by a headless gz sim process running on the same local machine. I skimmed the other repos in the same GitHub org, but I not interested in the larger cloud hosting web front end, as I’m not using AWS, just running from a local container. Is there a npm start command or binary PATH specific for the gzweb2 branch?

The webserver code is in the https://github.com/gazebosim/gz-launch. Here is an example launch file: https://github.com/gazebosim/gz-launch/blob/gz-launch6/examples/websocket.gzlaunch. So, you’d have to start Gazebo simulation, and also launch the websocket server.

Is that what you’re looking for?

1 Like

I see, so there is a websocket server to bridge the simulation server and the web GUI client together, but then how is the web GUI client it self launched? Where is the executable that then connects to that websocket server and could serve up the web UI to a browser, e.g. over localhost?

I started with this and I face the roadblocks. I’m not sure if anyone experience the same. I was able to load gazebo side though. See here: Missing script: "start" · Issue #13 · gazebo-web/gazebosim-app · GitHub

I figured maybe we could gain some knowledge with deeper technical questions on this github since this forum is just a surface, basic and simple.

Sorry, I’m launching a websocket along with a simple simulation (shapes.sdf) but it is only available form localhost:9002 do you know how can I change this to make it available to my local network?