# Introducing ros2-pkg-create - New Powerful ROS 2 Package Generator

**URL:** <https://discourse.openrobotics.org/t/introducing-ros2-pkg-create-new-powerful-ros-2-package-generator/40669>\
**Category:** ROS General\
**Tags:** ros2\
**Created:** [November 18, 2024, 10:12am UTC](https://discourse.openrobotics.org/t/introducing-ros2-pkg-create-new-powerful-ros-2-package-generator/40669 "2024-11-18T10:12:48Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![lreiher](https://sea2.discourse-cdn.com/flex022/user_avatar/discourse.openrobotics.org/lreiher/32/14330_2.png) [@lreiher](https://discourse.openrobotics.org/u/lreiher)\
**Post date:** [November 18, 2024, 10:12am UTC](https://discourse.openrobotics.org/t/introducing-ros2-pkg-create-new-powerful-ros-2-package-generator/40669/1 "2024-11-18T10:12:48Z")

</div>

We would like to present our newly open-sourced ROS 2 Package Generator, simply called [_ros2-pkg-create_](https://github.com/ika-rwth-aachen/ros2-pkg-create). It supports C++ and Python nodes as well as advanced features such as C++ components or lifecycle nodes.

Instantly try it out by running:

```bash
pip install ros2-pkg-create
ros2-pkg-create --template ros2_cpp_pkg .

```

 ![image](https://us1.discourse-cdn.com/flex022/uploads/ros/original/3X/c/6/c6e614efc2cc156f7c599f1b7325f90b03424ce4.png)

Given the recent interest in [Turtle Nest](http://discourse.ros.org/t/introducing-turtle-nest-gui-for-ros-2-package-creation/39229), we felt it’s about time to open-source our own take at a ROS 2 package generator, which use for all of our new packages at [Institute for Automotive Engineering (ika) at RWTH Aachen University](https://github.com/ika-rwth-aachen).

_ros2-pkg-create_ is an interactive CLI tool for quickly generating ROS 2 packages from basic pub/sub nodes to complex lifecycle components. It is meant to replace the official [`ros2 pkg create`](https://docs.ros.org/en/jazzy/Tutorials/Beginner-Client-Libraries/Creating-Your-First-ROS2-Package.html#create-a-package) command.

You can either directly control all options through command-line arguments or use the interactive questionnaire to walk through. No more memorization of available options for such a generation tool.

_ros2-pkg-create_ can generate ROS 2 C++ Packages, Python Packages, and Interfaces Packages. The supported features include:

- _C++ Package:_ publisher, subscriber, parameter loading, launch file, service server, action server, timer callback, component, lifecycle node, docker-ros
- _Python Package:_ publisher, subscriber, parameter loading, launch file, service server, action server, timer callback, docker-ros
- _Interfaces Package:_ message, service, action

Under the hood, the [templates](https://github.com/ika-rwth-aachen/ros2-pkg-create/tree/main/templates) are implemented using the Jinja templating engine, which allows for easy customizability.

We are very much looking forward to your feedback!

Best,  
Lennart from Aachen

---

_[View the full topic](https://discourse.openrobotics.org/t/introducing-ros2-pkg-create-new-powerful-ros-2-package-generator/40669)._
