| 
 | 1 | +# rclnodejs Tutorials  | 
 | 2 | + | 
 | 3 | +This directory contains comprehensive tutorials explaining various ROS 2 features and concepts using rclnodejs. Each tutorial provides practical examples and best practices for building robust ROS 2 applications in JavaScript/Node.js.  | 
 | 4 | + | 
 | 5 | +## Getting Started  | 
 | 6 | + | 
 | 7 | +If you're new to ROS 2, start with the **Basic Concepts** tutorial to understand fundamental communication patterns, then explore other tutorials based on your specific needs.  | 
 | 8 | + | 
 | 9 | +## Available Tutorials  | 
 | 10 | + | 
 | 11 | +### 📚 Fundamentals  | 
 | 12 | + | 
 | 13 | +#### [ROS 2 Basic Concepts](ros2-basic-concepts.md)  | 
 | 14 | + | 
 | 15 | +Introduction to fundamental ROS 2 communication patterns: **Topics** (publish/subscribe) and **Services** (request/response). Essential for beginners to understand the core building blocks of ROS 2 applications.  | 
 | 16 | + | 
 | 17 | +### 🔧 Node Management  | 
 | 18 | + | 
 | 19 | +#### [Lifecycle Nodes](lifecycle-nodes.md)  | 
 | 20 | + | 
 | 21 | +Learn about managed nodes with state machines for controlled startup, shutdown, and error handling. Covers lifecycle states, transitions, and implementing robust, production-ready nodes.  | 
 | 22 | + | 
 | 23 | +#### [Parameter Service](parameter-service.md)  | 
 | 24 | + | 
 | 25 | +Dynamic configuration management using ROS 2 parameters. Covers parameter declaration, validation, runtime updates, and callbacks for building configurable applications.  | 
 | 26 | + | 
 | 27 | +### 🚀 Advanced Communication  | 
 | 28 | + | 
 | 29 | +#### [ROS 2 Actions](actionlib.md)  | 
 | 30 | + | 
 | 31 | +Implement long-running, cancellable tasks with progress feedback using the ROS 2 action system. Learn to create action servers and clients for complex robot behaviors.  | 
 | 32 | + | 
 | 33 | +#### [Service Introspection](service-introspection.md)  | 
 | 34 | + | 
 | 35 | +Debug and monitor service interactions in real-time. Learn to observe service calls, responses, and performance metrics for troubleshooting distributed systems.  | 
 | 36 | + | 
 | 37 | +#### [Content Filtering Subscription](content-filtering-subscription.md)  | 
 | 38 | + | 
 | 39 | +Reduce network traffic and improve performance by filtering messages at the DDS middleware level using SQL-like expressions. Essential for high-frequency data streams.  | 
 | 40 | + | 
 | 41 | +### 🔍 Introspection & Debugging  | 
 | 42 | + | 
 | 43 | +#### [Type Description Service](type-description-service.md)  | 
 | 44 | + | 
 | 45 | +Introspect message and service types used by nodes at runtime. Learn to query type definitions, field descriptions, and dependencies for better system understanding.  | 
 | 46 | + | 
 | 47 | +## Additional Resources  | 
 | 48 | + | 
 | 49 | +- [rclnodejs API Documentation](https://robotwebtools.github.io/rclnodejs/)  | 
 | 50 | +- [ROS 2 Official Documentation](https://docs.ros.org/)  | 
 | 51 | +- [rclnodejs GitHub Repository](https://github.com/RobotWebTools/rclnodejs)  | 
 | 52 | +- [ROS 2 Examples](../example/)  | 
 | 53 | + | 
 | 54 | +---  | 
 | 55 | + | 
 | 56 | +_These tutorials are part of the rclnodejs project. For the latest updates and more examples, visit the [GitHub repository](https://github.com/RobotWebTools/rclnodejs)._  | 
0 commit comments