🐣 Hatchery
![](https://img.shields.io/jetbrains/plugin/d/10290-hatchery.svg)
Note: This project is currently unmaintained and seeking a maintainer. We will try to keep it running on the latest version of the IntelliJ Platform, but no guarantees. If you are interested in contributing, please contact Duckietown.
An open source IDE for the Robot Operating System.
Provides language support and code assistance for developing ROS applications, with tools for deploying and monitoring live applications.
Installation
Prerequisites
Java must be installed prior to building Hatchery...
Building Hatchery requires a JRE or JDK. First check you have one installed: `java -version`
[JDK 8](http://openjdk.java.net/install/) or higher is sufficient. Ubuntu/Debian:
```bash
sudo add-apt-repository ppa:openjdk-r/ppa
sudo apt-get update
sudo apt-get install openjdk-8-jdk
```
First, clone this repository and open the project directory using the command line.
`git clone https://github.com/breandan/hatchery && cd hatchery`
To launch the IDE (optionally, you can specify the path to an existing ROS project):
`./gradlew runIde [-Project=""]`
On first launch, you may need to setup a Python SDK. From **File | Project Structure** (or alternately **Preferences | :mag: Python Interpreter | Project Interpreter**), then select or create a new *Python SDK* to receive coding assistance in Python files.
CLion users should follow the ROS Setup Tutorial to configure build paths...
and access CLion-specific features such as linking Catkin libraries, running a ROS node from the IDE and attaching a debugger to a running node. The Hatchery plugin can be installed in the usual way from the settings menu.
Duckietown participants should configure their Duckietown environment as instructed...
Ensure `echo $DUCKIETOWN_ROOT` returns the correct path to your [Duckietown directory](https://github.com/duckietown/software).
If not, you should first run `source environment.sh` from inside the Duckietown software directory.
Hatchery will use `DUCKIETOWN_ROOT` as the default project directory, so you can omit the `-Project` flag below.
Existing users of JetBrains' IDEs (ex. PyCharm, CLion, or IntelliJ IDEA) can install Hatchery directly through the IDE, via File | Settings | Plugins | Marketplace... | :mag: "hatchery". Older versions of Hatchery are also available through the plugin repository.
For the adventurous, untested, canary builds are available on our TeamCity build server. Download the plugin ZIP file and install it from disk.
Contributing
To contribute to this project, run the following command from inside the project root directory:
./gradlew runIde -PluginDev
This will download and run IntelliJ IDEA CE and open the project. You are ready to get started!
ROS Enrivonment
Hatchery tries to locate the ROS installation directory, but it helps if you are running the IDE inside with the ROS environment. In most cases, we can detect the ROS installation path, however you may need to manually configure the ROS environment beforehand.
Getting Started
Watch the following screencast for a demonstration of some features:
![Screencast](https://img.youtube.com/vi/OU1_tqZs9EM/0.jpg)
Features
Currently, Hatchery supports the following ROS filetypes:
- [x] ROS Launch (
*.launch
, *.test
)
- [x] ROS Package (
package.xml
)
- [x] ROS URDF (
*.urdf.xacro
)
- [x] ROS Bag (
*.bag
)