{"id":13702820,"url":"https://github.com/gramaziokohler/roslibpy","last_synced_at":"2025-05-16T10:06:25.736Z","repository":{"id":43716574,"uuid":"119359521","full_name":"gramaziokohler/roslibpy","owner":"gramaziokohler","description":"Python ROS Bridge library","archived":false,"fork":false,"pushed_at":"2025-01-19T11:03:51.000Z","size":393,"stargazers_count":289,"open_issues_count":23,"forks_count":57,"subscribers_count":27,"default_branch":"main","last_synced_at":"2025-05-02T18:03:13.774Z","etag":null,"topics":["python","robotics","ros"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gramaziokohler.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.rst","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-29T09:13:24.000Z","updated_at":"2025-04-13T15:22:32.000Z","dependencies_parsed_at":"2023-02-12T22:16:23.333Z","dependency_job_id":"cd181f0c-3880-432c-9a8a-1675ab919ff1","html_url":"https://github.com/gramaziokohler/roslibpy","commit_stats":{"total_commits":300,"total_committers":10,"mean_commits":30.0,"dds":0.13,"last_synced_commit":"55e8f396f9e7b5d5669f6a31c2ed8d9bc33c3400"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramaziokohler%2Froslibpy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramaziokohler%2Froslibpy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramaziokohler%2Froslibpy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gramaziokohler%2Froslibpy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gramaziokohler","download_url":"https://codeload.github.com/gramaziokohler/roslibpy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254509476,"owners_count":22082891,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["python","robotics","ros"],"created_at":"2024-08-02T21:00:43.458Z","updated_at":"2025-05-16T10:06:25.700Z","avatar_url":"https://github.com/gramaziokohler.png","language":"Python","funding_links":[],"categories":["Development Environment"],"sub_categories":["Code and Run"],"readme":"============================\nroslibpy: ROS Bridge library\n============================\n\n.. start-badges\n\n.. image:: https://readthedocs.org/projects/roslibpy/badge/?style=flat\n    :target: https://roslibpy.readthedocs.io/en/latest/\n    :alt: Documentation Status\n\n.. image:: https://img.shields.io/badge/docs-%E4%B8%AD%E6%96%87-brightgreen.svg\n    :target: https://roslibpy-docs-zh.readthedocs.io\n    :alt: Documentation: Chinese translation\n\n.. image:: https://github.com/gramaziokohler/roslibpy/workflows/build/badge.svg\n    :target: https://github.com/gramaziokohler/roslibpy/actions\n    :alt: Github Actions CI Build Status\n\n.. image:: https://img.shields.io/github/license/gramaziokohler/roslibpy.svg\n    :target: https://pypi.python.org/pypi/roslibpy\n    :alt: License\n\n.. image:: https://img.shields.io/pypi/v/roslibpy.svg\n    :target: https://pypi.python.org/pypi/roslibpy\n    :alt: PyPI Package latest release\n\n.. image:: https://anaconda.org/conda-forge/roslibpy/badges/version.svg\n    :target: https://anaconda.org/conda-forge/roslibpy\n\n.. image:: https://img.shields.io/pypi/implementation/roslibpy.svg\n    :target: https://pypi.python.org/pypi/roslibpy\n    :alt: Supported implementations\n\n.. end-badges\n\n**Python ROS Bridge library** allows to use Python and IronPython to interact\nwith `ROS \u003chttp://www.ros.org\u003e`_, the open-source robotic middleware.\nIt uses WebSockets to connect to\n`rosbridge 2.0 \u003chttp://wiki.ros.org/rosbridge_suite\u003e`_ and provides publishing,\nsubscribing, service calls, actionlib, TF, and other essential ROS functionality.\n\nUnlike the `rospy \u003chttp://wiki.ros.org/rospy\u003e`_ library, this does not require a\nlocal ROS environment, allowing usage from platforms other than Linux.\n\nThe API of **roslibpy** is modeled to closely match that of `roslibjs`_.\n\nROS1 is fully supported. ROS2 support is still in progress.\n\n\nMain features\n-------------\n\n* Topic publishing and subscribing.\n* Service calls (client).\n* Service advertisement (server).\n* ROS parameter management (get/set/delete).\n* ROS API services for getting ROS meta-information.\n* Actionlib support for interfacing with preemptable tasks.\n* TF Client via the ``tf2_web_republisher``.\n\n**Roslibpy** runs on Python 3.x and IronPython 2.7.\n\n\nInstallation\n------------\n\nTo install **roslibpy**, simply use ``pip``::\n\n    pip install roslibpy\n\nFor IronPython, the ``pip`` command is slightly different::\n\n    ipy -X:Frames -m pip install --user roslibpy\n\nRemember that you will need a working ROS setup including the\n**rosbridge server** and **TF2 web republisher** accessible within your network.\n\n\nDocumentation\n-------------\n\nThe full documentation, including examples and API reference\nis available on `readthedocs \u003chttps://roslibpy.readthedocs.io/\u003e`_.\n\n\nContributing\n------------\n\nMake sure you setup your local development environment correctly:\n\n* Clone the `roslibpy \u003chttps://github.com/gramaziokohler/roslibpy\u003e`_ repository.\n* Create a virtual environment.\n* Install development dependencies:\n\n::\n\n    pip install -r requirements-dev.txt\n\n**You're ready to start coding!**\n\nDuring development, use `pyinvoke \u003chttp://docs.pyinvoke.org/\u003e`_ tasks on the\ncommand prompt to ease recurring operations:\n\n* ``invoke clean``: Clean all generated artifacts.\n* ``invoke check``: Run various code and documentation style checks.\n* ``invoke docs``: Generate documentation.\n* ``invoke test``: Run all tests and checks in one swift command.\n* ``invoke``: Show available tasks.\n\nFor more details, check the *Contributor's Guide* available as part of `the documentation \u003chttps://roslibpy.readthedocs.io/\u003e`_.\n\nThe default branch was recently renamed to `main`. If you've already cloned this repository,\nyou'll need to update your local repository structure with the following lines:\n\n::\n\n    git branch -m master main\n    git fetch origin\n    git branch -u origin/main main\n\n\nReleasing this project\n----------------------\n\nReady to release a new version **roslibpy**? Here's how to do it:\n\n* We use `semver \u003chttp://semver.org/\u003e`_, i.e. we bump versions as follows:\n\n  * ``patch``: bugfixes.\n  * ``minor``: backwards-compatible features added.\n  * ``major``: backwards-incompatible changes.\n\n* Update the ``CHANGELOG.rst`` with all novelty!\n* Ready? Release everything in one command:\n\n::\n\n    invoke release [patch|minor|major]\n\n* Profit!\n\n\nCredits\n-------\n\nThis library is based on `roslibjs`_ and to a\nlarge extent, it is a line-by-line port to Python, changing only where a more\nidiomatic form makes sense, so a huge part of the credit goes to the\n`roslibjs authors \u003chttps://github.com/RobotWebTools/roslibjs/blob/develop/AUTHORS.md\u003e`_.\n\n.. _roslibjs: http://wiki.ros.org/roslibjs\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgramaziokohler%2Froslibpy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgramaziokohler%2Froslibpy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgramaziokohler%2Froslibpy/lists"}