Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

awesome-robotic-tooling

Robotic resources and tools for professional robotic development with ROS in C++ and Python.
https://github.com/eric-erki/awesome-robotic-tooling

Last synced: 1 day ago
JSON representation

  • Hardware

    • Version Control

      • kicad - A Cross Platform and Open Source Electronics Design Automation Suite
      • HRIM - An information model for robot hardware
      • URDF - Repository for Unified Robot Description Format (URDF) parsing code
      • phobos - An add-on for Blender allowing to create URDF, SDF and SMURF robot models in a WYSIWYG environment.
      • solidworks_urdf_exporter - SolidWorks to URDF Exporter
      • FreeCAD - Your own 3D parametric modeler
      • PcbDraw - Convert your KiCAD board into a nice looking 2D drawing suitable for pinout diagrams
      • PandaPower - An easy to use open source tool for power system modeling, analysis and optimization with a high degree of automation.
      • urdf-viz - Visualize URDF/XACRO file, URDF Viewer works on Windows/MacOS/Linux
      • kicad - A Cross Platform and Open Source Electronics Design Automation Suite
    • Calibration and Transformation

      • tf2 - transform library, which lets the user keep track of multiple coordinate frames over time
      • lidar_align - A simple method for finding the extrinsic calibration between a 3D lidar and a 6-dof pose sensor
      • kalibr - The Kalibr visual-inertial calibration toolbox
      • Calibnet - Self-Supervised Extrinsic Calibration using 3D Spatial Transformer Networks
      • lidar_camera_calibration - ROS package to find a rigid-body transformation between a LiDAR and a camera
      • ILCC - Reflectance Intensity Assisted Automatic and Accurate Extrinsic Calibration of 3D LiDAR
      • easy_handeye - Simple, straighforward ROS library for hand-eye calibration
      • imu_utils - A ROS package tool to analyze the IMU performance
      • kalibr_allan - IMU Allan standard deviation charts for use with Kalibr and inertial kalman filters
      • pyquaternion - is a full-featured Python module for representing and using quaternions
  • Development Environment

    • Code and Run

      • Sublime - A sophisticated text editor for code, markup and prose
      • ROS IDEs - This page collects experience and advice on using integrated development environments (IDEs) with ROS.
      • Vim-ros - Vim plugin for ROS development
      • Visual Studio Code - Code editor for edit-build-debug cycle.
      • atom - Hackable text editor for the 21st century
      • Teletype - Share your workspace with team members and collaborate on code in real time in Atom
      • ade-cli - The ADE Development Environment (ADE) uses docker and Gitlab to manage environments of per project development tools and optional volume images
      • recipe-wizard - A Dockerfile generator for running OpenGL (GLX) applications with nvidia-docker2, CUDA, ROS, and Gazebo on a remote headless server system
      • Jupyter ROS - Jupyter widget helpers for ROS, the Robot Operating System
      • ros_rqt_plugin - The ROS Qt Creator Plug-in for Python
      • jedi - Autocompletion and static analysis library for python
      • roslibpy - Python ROS Bridge library allows to use Python and IronPython to interact with ROS, the open-source robotic middleware.
      • pybind11 - Seamless operability between C++11 and Python
      • Sourcetrail - free and open-source cross-platform source explorer
      • rebound - Command-line tool that instantly fetches Stack Overflow results when an exception is thrown
      • xeus-cling - Jupyter kernel for the C++ programming language
      • TabNine - The all-language autocompleter
    • Template

      • ROS - Template for ROS node standardization in C++
      • Launch - Templates on how to create launch files for larger projects
      • URDF - Examples on how to create Unified Robot Description Format (URDF) for different kinds of robots
      • Python - Style guide to be followed in writing Python code for ROS
      • Docker - The Dockerfile in the minimal-ade project shows a minimal example of how to create a custom base image
      • Bash - A bash scripting template incorporating best practices & several useful functions
    • Build and Deploy

      • ryo-iso - is a modern ISO builder that streamlines the process of deploying a complete robot operating system from a yaml config file
      • bloom - A release automation tool which makes releasing catkin packages easier
      • superflore - An extended platform release manager for Robot Operating System
      • catkin_tools - Command line tools for working with catkin
      • industrial_ci - Easy continuous integration repository for ROS repositories
      • ros_gitlab_ci - contains helper scripts and instructions on how to use Continuous Integration (CI) for ROS projects hosted on a GitLab instance.
      • gitlab-runner - runs tests and sends the results to GitLab
      • colcon-core - command line tool to improve the workflow of building, testing and using multiple software packages
      • gitlab-release - Simple python3 script to upload files (from ci) to the current projects release (tag)
      • clang - This is a compiler front-end for the C family of languages
      • catkin_virtualenv - Bundle python requirements in a catkin package via virtualenv
      • aptly - Debian repository management tool
      • cross_compile - Assets used for ROS2 cross-compilation
      • docker_images - Official Docker images maintained by OSRF on ROS(2) and Gazebo
      • robot_upstart - presents a suite of scripts to assist with launching background ROS processes on Ubuntu Linux PCs
      • robot_systemd - units for managing startup and shutdown of roscore and roslaunch
      • network_autoconfig - automatic configuration of ROS networking for most use cases without impacting usage that require manual configuration.
    • Unit and Integration Test

      • UnitTesting - This page lays out the rationale, best practices, and policies for writing and running unit tests and integration tests for ROS.
      • googletest - Google's C++ test framework
      • osrf_testing_tools_cpp - contains testing tools for C++, and is used in OSRF projects.
      • pytest - The pytest framework makes it easy to write small tests, yet scales to support complex functional testing
      • doctest - The fastest feature-rich C++11/14/17/20 single-header testing framework for unit tests and TDD
    • Lint and Format

      • cppcheck - Static analysis of C/C++ code
      • hadolint - Dockerfile linter, validate inline bash, written in Haskell
      • shellcheck - a static analysis tool for shell scripts
      • catkin_lint - catkin_lint checks package configurations for the catkin build system of ROS.
      • black - The uncompromising Python code formatter
      • pydocstyle - pydocstyle is a static analysis tool for checking compliance with Python docstring conventions
      • haros - H(igh) A(ssurance) ROS - Static analysis of ROS application code.
      • pylint - Pylint is a Python static code analysis tool which looks for programming errors, helps enforcing a coding standard, sniffs for code smells and offers simple refactoring suggestions.
    • Launch and Monitor

      • rosmon - ROS node launcher & monitoring daemon
      • multimaster_fkie - GUI-based management environment that is very useful to manage ROS-launch configurations and control running nodes
    • Version Control

      • meld - Meld is a visual diff and merge tool that helps you compare files, directories, and version controlled projects
      • tig - Text-mode interface for git
      • gitg - is a graphical user interface for git
      • git-cola - The highly caffeinated Git GUI
      • python-gitlab - is a Python package providing access to the GitLab server API.
      • bfg-repo-cleaner - Removes large or troublesome blobs like git-filter-branch does, but faster.
      • nbdime - Tools for diffing and merging of Jupyter notebooks.
      • semantic-release - Fully automated version management and package publishing
      • go-semrel-gitab - Automate version management for Gitlab
      • dive - A tool for exploring each layer in a docker image
  • Coordination and Communication

    • Agile Development - Manifesto for Agile Software Development
    • Woost - Workflow Automation, Collaboration with Externals
    • Gitflow - Makes parallel development very easy, by isolating new development from finished work
    • DeepL - DeepL, an online translator that outperforms Google, Microsoft and Facebook
    • Taiga - Agile Projectmanagment Tool
    • Kanboard - Minimalistic Kanban Board
    • Gitlab - Simple Selfhosted Gitlab Server with Docker
    • Gogs - Aims to build a simple, stable and extensible self-hosted Git service that can be setup in the most painless way
    • Wekan - Meteor based Kanban Board
    • JIRA API - Python Library for REST API of Jira
    • Taiga API - Python Library for REST API of Taiga
    • Chronos-Timetracker - Desktop client for JIRA. Track time, upload worklogs without a hassle
    • Grge - Grge is a daemon and command line utility augmenting GitLab
    • Helpy - is a modern, open source helpdesk customer support application
    • ONLYOFFICE - is a free open source collaborative system developed to manage documents, projects, customer relationship and email correspondence, all in one place.
    • Ganttlab - The easy to use, fully functional Gantt chart for GitLab and GitHub.
    • discourse - A platform for community discussion. Free, open, simple
    • gitlab-triage - GitLab's issues and merge requests triage, automated!
  • Documentation and Presentation

    • Typora - A Minimalist Markdown Editor
    • ReadtheDocs - Build your local ReadtheDocs Server
    • undraw - Free Professional business SVGs easy to customize
    • inkscape - Inkscape is a professional vector graphics editor for Linux, Windows and macOS
    • Markor - A Simple Markdown Editor for your Android Device
    • Pandoc - Universal markup converter
    • Yaspeller - Command line tool for spell checking
    • Doxygen - Doxygen is the de facto standard tool for generating documentation from annotated C++ sources
    • Word-to-Markdown - A ruby gem to liberate content from Microsoft Word document
    • carbon - Share beautiful images of your source code
    • ASCIIMATICS - Create a GIF for your command line examples
    • Hugo-Webslides - This is a Hugo template to create WebSlides presentation using markdown.
    • jupyter2slides - Cloud Native Presentation Slides with Jupyter Notebook + Reveal.js
    • patat - Terminal-based presentations using Pandoc
    • github-changelog-generator - Automatically generate change log from your tags, issues, labels and pull requests on GitHub.
    • GitLab-Release-Note-Generator - A Gitlab release note generator that generates release note on latest tag
    • OCRmyPDF - adds an OCR text layer to scanned PDF files, allowing them to be searched
    • Reveal-Hugo - A Hugo theme for Reveal.js that makes authoring and customization a breeze. With it, you can turn any properly-formatted Hugo content into a HTML presentation.
  • Architecture and Design

    • Unix philosophy - Set of cultural norms for developing software
    • yed - yEd is a powerful desktop application that can be used to quickly and effectively generate high-quality diagrams
    • rqt_graph - rqt_graph provides a GUI plugin for visualizing the ROS computation graph
    • robmosys - RobMoSys envisions an integrated approach built on top of the current code-centric robotic platforms, by applying model-driven methods and tools
    • yed_py - Generates graphML that can be opened in yEd
    • Plantuml - Web application to generate UML diagrams on-the-fly in your live documentation
    • rqt_launchtree - An RQT plugin for hierarchical launchfile configuration introspection.
    • cpp-dependencies - Tool to check C++ #include dependencies (dependency graphs created in .dot format)
    • pydeps - Python Module Dependency graphs
    • aztarna - a footprinting tool for robots.
    • fossology - a toolkit you can run license, copyright and export control scans from the command line
  • Framework

    • ROS - ROS (Robot Operating System) provides libraries and tools to help software developers create robot applications
    • Autoware.ai - Autoware.AI is the world's first "All-in-One" open-source software for autonomous driving technology
    • AutowareAuto - It is a clean slate rewrite of Autoware. Autoware.Auto applies best-in-class software engineering.
    • Stanford Self Driving Car Code - Stanford Code From Cars That Entered DARPA Grand Challenges
    • ROS2 - is the next generation robot operating system, and is actively being developed to fully replace ROS1 in the near future
    • OpenPilot - Open Source Adaptive Cruise Control (ACC) and Lane Keeping Assist System (LKAS)
    • Apollo - High performance, flexible architecture which accelerates the development, testing, and deployment of Autonomous Vehicles.
    • astrobee - Astrobee is a free-flying robot designed to operate as a payload inside the International Space Station (ISS).
    • CARMAPlatform - enables cooperative automated driving plug-in
  • Sensor Processing

    • Parallel Processing

      • OpenMP - OpenMP is an application programming interface that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortra
      • dask - Parallel computing with task scheduling for Python
      • cupy - NumPy-like API accelerated with CUDA
      • ArrayFire - ArrayFire: a general purpose GPU library.
      • thrust - Thrust is a C++ parallel programming library which resembles the C++ Standard Library.
    • Image Processing

      • tf-pose-estimation - Deep Pose Estimation implemented using Tensorflow with Custom Architectures for fast inference.
      • OpenVX - enables performance and power-optimized computer vision processing, especially important in embedded and real-time use cases
      • ros2_openvino_toolkit - provides a ROS-adaptered runtime framework of neural network which quickly deploys applications and solutions for vision inference
      • vision_visp - Wraps the ViSP moving edge tracker provided by the ViSP visual servoing library into a ROS package
      • apriltag_ros - A ROS wrapper of the AprilTag 3 visual fiducial detector
      • deep_object_pose - Deep Object Pose Estimation
      • DetectAndTrack - Detect-and-Track: Efficient Pose
      • SfMLearner - An unsupervised learning framework for depth and ego-motion estimation
      • imgaug - Image augmentation for machine learning experiments
      • vision_opencv - Packages for interfacing ROS with OpenCV, a library of programming functions for real time computer vision.
      • darknet_ros - YOLO ROS: Real-Time Object Detection for ROS
      • find-object - Simple Qt interface to try OpenCV implementations of SIFT, SURF, FAST, BRIEF and other feature detectors and descriptors
      • yolact - A simple, fully convolutional model for real-time instance segmentation.
      • detectron2 - is a next-generation research platform for object detection and segmentation.
      • basalt - Visual-Inertial Mapping with Non-Linear Factor Recovery
    • Point Cloud Processing

      • gpu-voxels - GPU-Voxels is a CUDA based library which allows high resolution volumetric collision detection between animated 3D models and live pointclouds from 3D sensors of all kinds.
      • cilantro - A lean C++ library for working with point cloud data
      • SqueezeSeg - Implementation of SqueezeSeg, convolutional neural networks for LiDAR point clout segmentation
      • point_cloud_io - ROS nodes to read and write point clouds from and to files (e.g. ply, vtk).
      • python-pcl - Python bindings to the pointcloud library
      • depth_clustering - Fast and robust clustering of point clouds generated with a Velodyne sensor.
      • lidar-bonnetal - Semantic and Instance Segmentation of LiDAR point clouds for autonomous driving
      • CSF - LiDAR point cloud ground filtering / segmentation (bare earth extraction) method based on cloth simulation
      • robot_body_filter - A highly configurable LaserScan/PointCloud2 filter that allows to dynamically remove the 3D body of the robot from the measurements.
      • grid_map - Universal grid map library for mobile robotic mapping
      • elevation_mapping - Robot-centric elevation mapping for rough terrain navigation
      • rangenet_lib - contains simple usage explanations of how the RangeNet++ inference works with the TensorRT and C++ interface.
      • pointcloud_to_laserscan - Converts a 3D Point Cloud into a 2D laser scan.
      • octomap - An Efficient Probabilistic 3D Mapping Framework Based on Octrees
      • pptk - Point Processing Toolkit from HEREMaps
      • spatio_temporal_voxel_layer - A new voxel layer leveraging modern 3D graphics tools to modernize navigation environmental representations
      • open3d - Open3D: A Modern Library for 3D Data Processing
      • libpointmatcher - An "Iterative Closest Point" library for 2-D/3-D mapping in Robotics
    • Pipeline

      • SARosPerceptionKitti - ROS package for the Perception (Sensor Processing, Detection, Tracking and Evaluation) of the KITTI Vision Benchmark Suite
      • multiple-object-tracking-lidar - C++ implementation to Detect, track and classify multiple objects using LIDAR scans or point cloud
      • AugmentedAutoencoder - RGB-based pipeline for object detection and 6D pose estimation
    • Machine Learning

      • DLIB - A toolkit for making real world machine learning and data analysis applications in C++
      • fastai - The fastai library simplifies training fast and accurate neural nets using modern best practices.
      • tpot - A Python Automated Machine Learning tool that optimizes machine learning pipelines using genetic programming
      • deap - Distributed Evolutionary Algorithms in Python
      • gym - A toolkit for developing and comparing reinforcement learning algorithms.
      • tensorflow_ros_cpp - A ROS package that allows to do Tensorflow inference in C++ without the need to compile TF yourself.
      • Tensorflow Federated - TensorFlow Federated (TFF) is an open-source framework for machine learning and other computations on decentralized data
  • Localization

    • Point Cloud Processing

      • rep-105 - Naming conventions and semantic meaning for
      • evo - Python package for the evaluation of odometry and SLAM
      • robot_localization - is a package of nonlinear state estimation nodes
      • fuse - General architecture for performing sensor fusion live on a
      • GeographicLib - A C++ library for geographic projections.
      • ntripbrowser - A Python API for browsing NTRIP (Networked Transport of RTCM via Internet Protocol).
      • RTKLIB - A version of RTKLIB optimized for single and dual frequency low cost GPS receivers, especially u-blox receivers
      • mola - is a Modular system for Localization and Mapping
      • imu_tools - IMU-related filters and visualizers.
    • SLAM

      • Mapbox - is a JavaScript library for interactive, customizable vector maps on the web
      • loam_velodyne - Laser Odometry and Mapping (Loam) is a realtime method for state estimation and mapping using a 3D lidar.
      • lio-mapping - Implementation of Tightly Coupled 3D Lidar Inertial Odometry and Mapping (LIO-mapping)
      • A-LOAM - Advanced implementation of LOAM
      • loam_livox - A robust LiDAR Odometry and Mapping (LOAM) package for Livox-LiDAR
      • StaticMapping - Use LiDAR to map the static world
      • viso2 - A ROS wrapper for libviso2, a library for visual odometry
      • xivo - X Inertial-aided Visual Odometry
      • rovio - Robust Visual Inertial Odometry Framework
      • LSD-SLAM - LSD-SLAM: Large-Scale Direct Monocular SLAM is a real-time monocular SLAM
      • CubeSLAM and ORB SLAM - Monocular 3D Object Detection and SLAM Package of CubeSLAM and ORB SLAM
      • VINS-Fusion - A Robust and Versatile Multi-Sensor Visual-Inertial State Estimator
      • openvslam - OpenVSLAM: A Versatile Visual SLAM Framework
      • MapsModelsImporter - A Blender add-on to import models from google maps
      • Lanelet2 - Map handling framework for automated driving
      • barefoot - Online and Offline map matching that can be used stand-alone and in the cloud
      • iD - The easy-to-use OpenStreetMap editor in JavaScript
      • segmap - A map representation based on 3D segments
      • osrm-backend - Open Source Routing Machine - C++ backend
      • robosat - Semantic segmentation on aerial and satellite imagery. Extracts features such as: buildings, parking lots, roads, water, clouds
      • sentinelsat - Search and download Copernicus Sentinel satellite images
      • MIT Kimera-Semantics - C++ library for real-time metric-semantic visual-inertial Simultaneous Localization And Mapping (SLAM)
      • cartographer_ros - Provides ROS integration for Cartographer
      • OpenDRIVE - OpenDRIVE® is an open file format for the logical description of road networks
  • Planning and Control

    • SLAM

      • HypridAStarTrailer - A path planning algorithm based on Hybrid A* for trailer truck.
      • commonroad - Composable benchmarks for motion planning on roads
      • mpcc - Model Predictive Contouring Controller for Autonomous Racing
      • rrt - C++ RRT (Rapidly-exploring Random Tree) implementation
      • path_planner - Hybrid A* Path Planner for the KTH Research Concept Vehicle
      • open_street_map - ROS packages for working with Open Street Map geographic information.
      • Open Source Car Control - is an assemblage of software and hardware designs that enable computer control of modern cars in order to facilitate the development of autonomous vehicle technology
      • fastrack - A ROS implementation of Fast and Safe Tracking (FaSTrack).
      • traffic-editor - A graphical editor for robot traffic flows.
      • pacmod - is designed to allow the user to control a vehicle with the PACMod drive-by-wire system.
  • Interaction

    • Graphical User Interface

      • rqt - rqt is a Qt-based framework for GUI development for ROS. It consists of three parts/metapackages
      • dynamic_reconfigure - The focus of dynamic_reconfigure is on providing a standard way to expose a subset of a node's parameters to external reconfiguration
      • qtpy - Provides an uniform layer to support PyQt5, PySide2, PyQt4 and PySide with a single codebase
      • mir - Mir is set of libraries for building Wayland based shells
      • cage - This is Cage, a Wayland kiosk. A kiosk runs a single, maximized application.
      • chilipie - Easy-to-use Raspberry Pi image for booting directly into full-screen Chrome
      • pencil - A tool for making diagrams and GUI prototyping that everyone can use.
    • Command Line

      • terminator - The goal of this project is to produce a useful tool for arranging terminals
      • dotfiles of cornerman - Powerful zsh and vim dotfiles
      • dotbot - A tool that bootstraps your dotfiles
      • prompt-hjem - A beautiful zsh prompt
      • ag - A code-searching tool similar to ack, but faster.
      • fzf - A command-line fuzzy finder
      • pkgtop - Interactive package manager and resource monitor designed for the GNU/Linux.
      • gocui - Minimalist Go package aimed at creating Console User Interfaces.
      • TerminalImageViewer - Small C++ program to display images in a (modern) terminal using RGB ANSI codes and unicode block graphics characters
      • rosshow - Visualize ROS topics inside a terminal with Unicode/ASCII art
      • python-prompt-toolkit - Library for building powerful interactive command line applications in Python
      • guake - Drop-down terminal for GNOME
      • wemux - Multi-User Tmux Made Easy
      • tmuxp - tmux session manager built on libtmux
      • mapscii - World map renderer for your console
      • bat - A cat(1) clone with wings.
    • Storage and Record

      • ncdu - Ncdu is a disk usage analyzer with an ncurses interface
      • borg - Deduplicating archiver with compression and authenticated encryption
      • bag-database - A server that catalogs bag files and provides a web-based UI for accessing them
      • marv-robotics - MARV Robotics is a powerful and extensible data management platform
      • kitti2bag - Convert KITTI dataset to ROS bag file the easy way!
      • rosbag_editor - Create a rosbag from a given one, using a simple GUI
      • nextcloud - Nextcloud is a suite of client-server software for creating and using file hosting services.
      • ros_type_introspection - Deserialize ROS messages that are unknown at compilation time
      • syncthing - is a continuous file synchronization program
      • rqt_bag_exporter - Qt GUI to export ROS bag topics to files (CSV and/or video)
      • xviz - A protocol for real-time transfer and visualization of autonomy data
    • High Performance Computing

      • kubernetes - Production-Grade Container Scheduling and Management
      • localstack - A fully functional local AWS cloud stack. Develop and test your cloud & Serverless apps offline
      • nvidia-docker - Build and run Docker containers leveraging NVIDIA GPUs
      • kubeflow - Machine Learning Toolkit for Kubernetes
      • log-pilot - Collect logs for docker containers
      • traefik - The Cloud Native Edge Router
      • graylog2-server - Free and open source log management
      • ansible - Ansible is a radically simple IT automation platform that makes your applications and systems easier to deploy
      • docker-py - A Python library for the Docker Engine API
      • noVNC - VNC client using HTML5
      • Slurm - Slurm: A Highly Scalable Workload Manager
      • jupyterhub - Multi-user server for Jupyter notebooks
      • Portainer - Making Docker management easy
    • Data Visualization and Mission Control

      • guacamole - clientless remote desktop gateway. It supports standard protocols like VNC, RDP, and SSH
      • rqt_bag - provides a GUI plugin for displaying and replaying ROS bag files.
      • webviz - web-based visualization libraries like rviz
      • plotly.py - An open-source, interactive graphing library for Python
      • PlotJuggler - The timeseries visualization tool that you deserve
      • bokeh - Interactive Data Visualization in the browser, from Python
      • voila - From Jupyter notebooks to standalone web applications and dashboards
      • Pangolin - Pangolin is a lightweight portable rapid development library for managing OpenGL display / interaction and abstracting video input.
      • kepler.gl - Kepler.gl is a powerful open source geospatial analysis tool for large-scale data sets.
      • qgis_ros - Access bagged and live topic data in a highly featured GIS environment
      • openmct - A web based mission control framework.
      • web_video_server - HTTP Streaming of ROS Image Topics in Multiple Formats
      • rvizweb - RVizWeb provides a convenient way of building and launching a web application with features similar to RViz
      • marvros - MAVLink to ROS gateway with proxy for Ground Control Station
      • streetscape.gl - Streetscape.gl is a toolkit for visualizing autonomous and robotics data in the XVIZ protocol.
      • rviz_cloud_annotation - Point cloud annotation tool based on RViz
      • PixelAnnotationTool - Annotate quickly images
      • LabelImg - LabelImg is a graphical image annotation tool and label object bounding boxes in images
      • cvat - Powerful and efficient Computer Vision Annotation Tool (CVAT)
      • point_labeler - Tool for labeling of a single point clouds or a stream of point clouds
      • label-studio - Label Studio is a multi-type data labeling and annotation tool with standardized output format
      • CloudCompare - CloudCompare is a 3D point cloud (and triangular mesh) processing software.
      • Potree - WebGL point cloud viewer for large datasets
      • point_cloud_viewer - makes viewing massive point clouds easy and convenient
      • ParaView - VTK-based Data Analysis and Visualization Application
      • mapviz - Modular ROS visualization tool for 2D data.
      • rviz_cinematographer - Easy to use tools to create and edit trajectories for the rviz camera.
      • rviz_satellite - Display internet satellite imagery in RViz
      • rviz_visual_tools - C++ API wrapper for displaying shapes and meshes in Rviz
      • tf_keyboard_cal - Allows manual control of a TF through the keyboard or interactive markers
    • Voice User Interface

      • rhasspy - Rhasspy (pronounced RAH-SPEE) is an offline, multilingual voice assistant toolkit inspired by Jasper that works well with Home Assistant, Hass.io, and Node-RED.
      • mycroft-core - Mycroft is a hackable open source voice assistant.
    • Network Distributed File Systems

      • sshfs - File system based on the SSH File Transfer Protocol
      • moosefs - a scalable distributed storage system
      • ceph - is a distributed object, block, and file storage platform
      • nfs - is a distributed file system protocol originally developed by Sun Microsystems
  • System

    • Embedded Operation Systems

      • Yocto - Produce tools and processes that enable the creation of Linux distributions for embedded software that are independent of the underlying architecture of the embedded hardware
      • ROSBerryPI - Installing ROS Kinetic on the Raspberry Pi
      • Xen - is an open-source (GPL) type-1 or baremetal hypervisor
      • QEMU - is a generic and open source machine emulator and virtualizer
      • meta-ros - OpenEmbedded Layer for ROS Applications
    • Real-Time Kernel

      • PREEMPT_RT kernel patch - Aim of the PREEMPT_RT kernel patch is to minimize the amount of kernel code that is non-preemptible.
      • ELISA - Project is to make it easier for companies to build and certify Linux-based safety-critical applications – systems whose failure could result in loss of human life, significant property damage or environmental damage
    • Debugging and Tracing

      • inspect - The inspect module provides functions for learning about live objects, including modules, classes, instances, functions, and methods
      • Roslaunch Nodes in Valgrind or GDB - When debugging roscpp nodes that you are launching with roslaunch, you may wish to launch the node in a debugging program like gdb or valgrind instead.
    • Safety

      • Automated Valet Parking Safety Documents - Automated Valet Parking Safety Documents
      • Automotive Grade Linux - Automotive Grade Linux is a collaborative open source project that is bringing together automakers, suppliers and technology companies to accelerate the development and adoption of a fully open software stack for the connected car
      • AUTOSAR Coding Standard - Guidelines for the use of the C++14 language in critical and safety-related system
  • Awesome

    • Safety

      • awesome-ros2 - A curated list of awesome Robot Operating System Version 2.0 (ROS 2) resources and libraries.
  • Simulation

    • Calibration and Transformation

      • Drake - Drake aims to simulate even very complex dynamics of robots
      • Webots - Webots is an open source robot simulator compatible (among others) with [ROS](http://wiki.ros.org/webots_ros) and [ROS2](http://wiki.ros.org/webots_ros2).
      • lgsv - LG Electronics America R&D Center has developed an HDRP Unity-based multi-robot simulator for autonomous vehicle developers.
      • carla - Open-source simulator for autonomous driving research
      • deepdive - End-to-end simulation for self-driving cars
      • uuv_simulator - Gazebo/ROS packages for underwater robotics simulation
      • AirSim - Open source simulator for autonomous vehicles built on Unreal Engine
      • self-driving-car-sim - A self-driving car simulator built with Unity
      • ROSIntegration - Unreal Engine Plugin to enable ROS Support
      • gym-gazebo - An OpenAI gym extension for using Gazebo known as gym-gazebo
      • car_demo - This is a simulation of a Prius in gazebo 9 with sensor data being published using ROS kinetic.
      • sumo - Eclipse SUMO is an open source, highly portable, microscopic and continuous road traffic simulation package designed to handle large road networks
      • open-simulation-interface - A generic interface for the environmental perception of automated driving functions in virtual scenarios.
      • ESIM - an Open Event Camera Simulator
      • Menge - Crowd Simulation Framework
      • pedsim_ros - Pedestrian simulator powered by the social force model for Gazebo
      • highway-env - A collection of environments for autonomous driving and tactical decision-making tasks
      • sumo - Eclipse SUMO is an open source, highly portable, microscopic and continuous road traffic simulation package designed to handle large road networks
      • ESIM - an Open Event Camera Simulator
  • Behavior and Decision

    • SLAM

      • Groot - Graphical Editor to create BehaviorTrees. Compliant with BehaviorTree.CPP
      • BehaviorTree.CPP - Behavior Trees Library in C++
      • ROS-Behavior-Tree - Behavior Trees Library for ROS
      • RAFCON - Uses hierarchical state machines, featuring concurrent state execution, to represent robot programs
      • ROSPlan - Generic framework for task planning in a ROS system