← ClaudeAtlas

ros2-web-integrationlisted

Patterns and best practices for integrating ROS2 systems with web technologies including REST APIs, WebSocket bridges, and browser-based robot interfaces. Use this skill when building web dashboards for robots, streaming camera feeds to browsers, exposing ROS2 services as REST endpoints, or implementing bidirectional WebSocket communication between web UIs and ROS2 nodes. Trigger whenever the user mentions rosbridge, rosbridge_suite, roslibjs, FastAPI with ROS2, Flask with rclpy, WebSocket for robot telemetry, MJPEG streaming, WebRTC for robots, REST API wrapping ROS2 services, web-based robot control, browser robot interface, robot dashboard, CORS configuration for robots, or any web-to-ROS2 bridge pattern. Also trigger for authentication on robot web interfaces, rate limiting sensor streams, video streaming from robot cameras to browsers, or running async web frameworks alongside the ROS2 executor. Covers rosbridge_suite, FastAPI, Flask, WebSocket, and WebRTC approaches.
vicky23383/robotics-agent-skills · ★ 5 · AI & Automation · score 77
Install: claude install-skill vicky23383/robotics-agent-skills
# ROS2 Web Integration Skill ## When to Use This Skill - Building a web dashboard to monitor or control a robot running ROS2 - Streaming camera feeds (MJPEG, WebRTC, compressed WebSocket) from a robot to a browser - Exposing ROS2 services and actions as REST API endpoints - Implementing bidirectional WebSocket communication between a web UI and ROS2 nodes - Setting up rosbridge_suite for quick prototyping or foxglove integration - Writing a custom FastAPI or Flask bridge to ROS2 for production deployments - Adding authentication, rate limiting, or CORS to robot web interfaces - Running an async web server (uvicorn) alongside the rclpy executor without deadlocks - Publishing teleop commands from a browser joystick to cmd_vel - Serving ROS2 parameter configuration pages or diagnostic dashboards over HTTP ## Architecture Overview ### Comparison Table | Feature | rosbridge_suite | Custom FastAPI Bridge | Custom Flask Bridge | |---|---|---|---| | Latency | ~5-15ms (WebSocket) | ~2-5ms (WebSocket), ~10-30ms (REST) | ~10-50ms (REST only without extensions) | | Throughput | Medium (JSON serialization overhead) | High (binary WebSocket, async) | Low-Medium (sync, GIL-bound) | | Auth | Basic (rosauth, limited) | Full (JWT, OAuth2, API keys) | Full (Flask-Login, JWT) | | Complexity | Low (launch and connect) | Medium (must manage two event loops) | Medium (must manage threading) | | Video Streaming | Requires separate web_video_server | Native (MJPEG, WebSocket binary) | MJPEG via g