All Tutorials

ROS for Beginners III: Web-based Navigation with ROSBridge

ROS for Beginners III: Web-based Navigation with ROSBridge
ROS for Beginners III: Web-based Navigation with ROSBridge

ROS for Beginners III: Web-based Navigation with ROSBridge

Leverage the use of React and JavaScript to control and monitor robot ROS navigation using Web interfaces

What you’ll learn

ROS for Beginners III: Web-based Navigation with ROSBridge

  • Create a web interface to teleoperate a robot
  • Develop a web interface for robot navigation
  • Use JavaScript React front-end development
  • Use ROSBridge to interact with the ROS ecosystem


  • Be familiar with ROS concepts and ecosystem
  • Recognizes the concepts of the navigation
  • Has basic knowledge of Web development
  • Understand Javascript


Welcome to the course on ROS for Beginners III Web-based Navigation with ROSBridge. I am Anis Koubaa, and I will be your instructor in this course. This course is the third course in the series ROS For Beginners. It is a project-based course that deals with how to develop a web interface to teleoperate and interact with ROS-enabled robots.

Project Overview

At the end of this course project, you will develop a web interface that will allow you to teleoperate and monitor the robot based on ROS. The Web interface will be developed using ReactJS, which is a popular JavaScript framework for front-end development.

We will first start by developing a component that will tell us whether the robot with which we would like to communicate is connected or not connected. Then, you will develop another component to teleoperate the robot through a web-based joystick in ReactJS. You also implement a button for stopping the robot in an emergency situation. Furthermore, the web interface will display live information about the robot such as its position, orientation, and linear and angular velocity.

The last part of this project deals with map-based navigation. You will be able to display the navigation map on the web browser and send the goal location for the robot to navigate to. In the end, you will develop a comprehensive web interface that will allow you to interact with your robot easily through a web interface using the most popular JavaScript framework, which is ReactJS.

Why this course?

This course represents a first step into the world of cloud robotics.

Cloud robotics is an emerging topic in the last few years and it aims at integrating mobile robots with cloud computing systems and the Internet of Things through web services interfaces.

Besides, I have developed this course because there are not sufficient pointers and no comprehensive tutorials on how to make web browsers interact with robots.

What’s worth in this course?

This course is unique in the sense that it is designed to Bridge the gap between the robotics world and the web development world.

In fact, most of the engineers who work in the robotic area do not have a background in web development, and most of the web developers do not have a background in robots or ROS. This course bridges these two areas together and provides a systematic introduction to the topic of web development for ROS-enabled robots.

Furthermore, we will use the ReactJS web development technology which the most evolving most popular javascript front-end development framework.

You will learn all the tricks in a step-by-step approach to help you save plenty of time looking around for scattered documentation.


To take the most benefit from this course, you should be already familiar with Robot Operating System (ROS) and its navigation stack. If you are not familiar with ROS, then take two courses ROS For Beginners I and ROS For Beginners II before diving into this course.

As we will do some web development, it will be recommended to have some very basic understanding of HTML, CSS, and JavaScript, just basics and nothing advanced. You can take any introduction about HTML, CSS, and JS if you do not know about them.

It is not required that you have any Prior knowledge of ReactJS because I will introduce all the essential concepts in this course.

Welcome to the course and I wish you a pleasant learning experience.

Who this course is for:

  • Cloud robotics engineers
  • Any ROS learner and enthusiast
  • Software developer for robotics applications
  • Last updated 6/2021

Content From:
Download Now

Arduino Battery Level Monitor Course