Skip to main content

A TUI for ROS 2

Project description

ROS 2 Window Manager TUI (h20tui)

A high-performance, asynchronous Text User Interface (TUI) designed for ROS 2 Humble. This tool transforms your terminal into a tiling window manager specifically tuned for robotics development. Navigate your workspace, monitor topics, and manage multiple nodes side-by-side using pure keyboard motions.


🚀 Key Features

  • Ament-Aware Fuzzy Discovery: Instantly find executables and launch files by scanning the ament_index. No more "trash" suggestions from standard bash completion.
  • Tiling Workspace: Split your view into multiple independent panes to monitor topic echo, node info, and launch logs simultaneously.
  • Vim-Powered Navigation: Full hjkl support for tree navigation, log scrolling, and Ctrl + h/l for lightning-fast pane switching.
  • Robust Process Management: Uses Unix process groups (os.killpg) to ensure that killing a ros2 launch command actually cleans up all child nodes.
  • Search-to-Select Workflow: Seamless focus transition from the fuzzy-search bar to the command tree using only the Enter key.

📦 Installation

Prerequisites

  • Ubuntu 22.04
  • ROS 2 Humble (Sourced)
  • Python 3.10+

1. From Source

To install in "editable" mode so that changes to the code take effect immediately:

git clone git@github.com:ozaydincan/h20tui.git 
cd h20tui
pip install -e .

2. From Pip (Recommended)

You can install h20tui directly from PyPI:

pip install h20tui
source /opt/ros/humble/setup.bash
# (Optional) Source your workspace
source ~/your_ws/install/setup.bash

Running the TUI

If ROS2 is sourced in your workspace

h20tui

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

h20tui-0.1.1.tar.gz (7.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

h20tui-0.1.1-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file h20tui-0.1.1.tar.gz.

File metadata

  • Download URL: h20tui-0.1.1.tar.gz
  • Upload date:
  • Size: 7.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for h20tui-0.1.1.tar.gz
Algorithm Hash digest
SHA256 427d9cf4b874e3f57efa88d2e27b30972e36869ec1bf68db440d0e4ae49d14c8
MD5 5caab7eb9731ac3cf460f2417c8388c9
BLAKE2b-256 dd9e792bf0a99f7b2984c05c3b294a5dae37d5de80d64e2ecf1fc335733c5dde

See more details on using hashes here.

File details

Details for the file h20tui-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: h20tui-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for h20tui-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 d7aa8fd5147b4c53d9c12ed7b00005f8725401c73898a9087cc35fcca40b769a
MD5 fa177c1a0178e43d45185994e3f4a548
BLAKE2b-256 8bbfb43477c9d9f65f86a8caa04ab55bc6280c28a8e2b0eaf20b380ea992245a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page