>
= ROS GitHub Organizations =
There are several !GitHub organizations which host many of the core ROS packages. Below you will find a list of the most common ones with a quick description of their focus:
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/ros-android | ROS Android]] <
> ''Android apps based on ROSJava. Also see [[https://github.com/ros-android-pr2 | ROS Android PR2]] and [[https://play.google.com/store/apps/developer?id=Willow+Garage&hl=en | Link to Play Store]]'' ||
|| || ||
|| {{attachment:ros_controls.png|logo|width=100}} || [[https://github.com/ros-controls | ROS Controls]] <
> ''Controllers and interfaces for hardware'' ||
|| || ||
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/ros | ROS Core]] <
> ''Core ROS libraries and tools such as standard messages, the build system [[catkin]], the ROS clients [[roscpp]] and [[rospy]], [[actionlib]], [[pluginlib]], [[nodelet]], etc'' ||
|| || ||
|| {{attachment:ros_drivers.png|logo|width=100}} || [[https://github.com/ros-drivers | ROS Drivers]] <
> ''Drivers for sensors and other hardware'' ||
|| || ||
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/ros-geographic-info | ROS Geographic Information]] <
> ''Packages for managing geographic information within ROS''||
|| || ||
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/ros-gbp | ROS GitBuildPackage (GBP)]] <
> ''Git Build Package style repositories for the release pipeline.'' ||
|| || ||
|| {{attachment:ros_infrastructure.png|logo|width=100}} || [[https://github.com/ros-infrastructure | ROS Infrastructure]] <
> ''Foundational tools for ROS ecosystem such as package release ([[bloom]]), build farm scripts, documentation generators. Most of these are backend, non-user facing repositories.'' ||
|| || ||
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/organizations/rosjava | ROS Java]] <
> ''The Java ROS client library and tools'' ||
|| || ||
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/ros-manipulation | ROS Manipulation]] <
> ''Packages relating to manipulation and the manipulation pipeline.'' ||
|| || ||
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/ros-interactive-manipulation | ROS Interactive Manipulation]] <
> ''Packages relating to interactive manipulation and the manipulation pipeline.'' ||
|| || ||
|| {{attachment:ros_perception.png|logo|width=100}} || [[https://github.com/ros-perception | ROS Perception]] <
> ''Tools for perception and vision'' ||
|| || ||
|| {{attachment:ros_planning.png|logo|width=100}} || [[https://github.com/ros-planning | ROS Planning]] <
> ''Navigation and path planning related packages including [[navigation]] and [[moveit]]''||
|| || ||
|| {{attachment:ros.png|logo|width=100}} || [[https://github.com/ros-robots | ROS Robots]] <
> ''Packages to support robots which do not have their own organization. See also [[https://github.com/PR2 | PR2]] and [[https://github.com/turtlebot | Turtlebot]]''||
|| || ||
|| {{attachment:ros_simulation.png|logo|width=100}} || [[https://github.com/ros-simulation | ROS Simulation]] <
> ''Simulators for use in ROS'' ||
|| || ||
|| {{attachment:ros_visualization.png|logo|width=100}} || [[https://github.com/ros-visualization | ROS Visualization ]] <
> ''Graphical tools to visualize data including [[rviz]] and [[rqt]].'' ||
''A historical list of institutions that have contributed to ROS is available on the [[Repositories|repositories]] page.''
It is not required that if you are doing something related to one of these categories that your package be in one of the organization. And every choice of where to put a packages is always a judgement call for most packages could be multiply categorized. The goal of using these organizations is to facilitate maintenance so grouping software by developer communities is often the best way to decide where to host a package.
== Guidelines for administering organizations ==
These are general guidelines for anyone administering a repository with ROS code.
* All package maintainers should have administrative access to the repositories in which they maintain packages to enable them to process tickets and do their role.
* All package maintainers should be publicly visible as members of the organization.
* The main point of contact for the organization should be listed as a public member.
== Guidelines for administering ros-* organizations on GitHub ==
In addition to the general guidelines for administering an organization on !GitHub listed above. If the organization is using the ROS name in the ros-* format:
* The ROS Platform Manager should also be in the Owners group to facilitate handoff's between maintainers should there be a gap.