https://github.com/pollen-robotics/reachy2-sdk
Reachy 2 Python SDK
https://github.com/pollen-robotics/reachy2-sdk
pollen-robotics reachy sdk
Last synced: about 2 months ago
JSON representation
Reachy 2 Python SDK
- Host: GitHub
- URL: https://github.com/pollen-robotics/reachy2-sdk
- Owner: pollen-robotics
- License: apache-2.0
- Created: 2023-08-10T13:11:11.000Z (almost 2 years ago)
- Default Branch: develop
- Last Pushed: 2025-04-02T15:30:39.000Z (about 2 months ago)
- Last Synced: 2025-04-02T16:32:28.770Z (about 2 months ago)
- Topics: pollen-robotics, reachy, sdk
- Language: Python
- Homepage: https://www.pollen-robotics.com
- Size: 3.81 MB
- Stars: 8
- Watchers: 3
- Forks: 1
- Open Issues: 34
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Python SDK for Reachy 2
[](LICENSE)
[](https://github.com/psf/black)



## Install
You can install the library either from Pypi, or by cloning the entire repository :
From PyPi```bash
pip install reachy2-sdk -e .
```From the source
```bash
git clone https://github.com/pollen-robotics/reachy2-sdk.git
cd reachy2-sdk
pip install -e .[dev]
```The *[dev]* option includes tools for developers.
## Usage
Check out the [examples](src/examples/) folder for jupyter notebooks and example scripts.
You can also take a look on the [Reachy2 Documentation](https://pollen-robotics.github.io/reachy2-docs/developing-with-reachy-2/getting-started-sdk/), which provides a more detailed overview of the SDK's various functions.## Documentation
SDK Documentation is generated via pdoc, and it's available at [https://pollen-robotics.github.io/reachy2-sdk/reachy2_sdk.html](https://pollen-robotics.github.io/reachy2-sdk/reachy2_sdk.html)
It can be generated locally with:
```console
pdoc reachy2_sdk --output-dir docs --logo "https://pollen-robotics.github.io/reachy2-sdk/pollen_logo.png" --logo-link "https://www.pollen-robotics.com" --docformat google
```*You maybe have to install pdoc first by running
pip install pdoc
.*The documentation relies on the provided docstrings with the google style. pydocstyle is used to enforced this style.
```console
pydocstyle src/ --convention google --count
```## Unit tests
To ensure everything is functioning correctly, run the unit tests. There are two groups of tests: offline and online. Offline tests check internal functions using mock objects. Online tests require a connection to a simulated robot (e.g., in rviz), and the virtual robot should exhibit movement during these tests.
To execute the tests, use pytest with an optional category:
```console
$ pytest [-m offline|online]
```Note that only **offline tests** are executed by the Continuous Integration/Continuous Deployment (CI/CD) pipeline, as they don't require a gRPC connection.
### Camera tests
Camera tests have their own marks because it requires the cameras to be plugged to the sdk server
```console
$ pytest -m cameras
```## Logs
The SDK relies on the [python logging system](https://docs.python.org/3/howto/logging.html). Set the desired debug level to see messages from the SDK.
```python
import logging
logging.basicConfig(level=logging.DEBUG)
```