{"id":18300521,"url":"https://github.com/eclipse-zenoh/zenoh-python","last_synced_at":"2025-05-16T00:06:31.439Z","repository":{"id":36957417,"uuid":"235378159","full_name":"eclipse-zenoh/zenoh-python","owner":"eclipse-zenoh","description":"Python API for zenoh","archived":false,"fork":false,"pushed_at":"2025-05-14T01:35:58.000Z","size":2349,"stargazers_count":103,"open_issues_count":4,"forks_count":45,"subscribers_count":11,"default_branch":"main","last_synced_at":"2025-05-14T03:26:32.899Z","etag":null,"topics":["edge-computing","embedded","iot","python","zenoh"],"latest_commit_sha":null,"homepage":"http://zenoh.io","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eclipse-zenoh.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2020-01-21T15:41:58.000Z","updated_at":"2025-05-14T00:17:42.000Z","dependencies_parsed_at":"2023-11-17T09:51:24.440Z","dependency_job_id":"5f9d955e-e697-4ff6-9c9f-bbaf7db2a312","html_url":"https://github.com/eclipse-zenoh/zenoh-python","commit_stats":{"total_commits":373,"total_committers":10,"mean_commits":37.3,"dds":"0.46380697050938335","last_synced_commit":"1f7d163ec8ecfe7335e39562c04513a870a36dc7"},"previous_names":[],"tags_count":193,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-zenoh%2Fzenoh-python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-zenoh%2Fzenoh-python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-zenoh%2Fzenoh-python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-zenoh%2Fzenoh-python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eclipse-zenoh","download_url":"https://codeload.github.com/eclipse-zenoh/zenoh-python/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254442854,"owners_count":22071878,"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":["edge-computing","embedded","iot","python","zenoh"],"created_at":"2024-11-05T15:12:42.810Z","updated_at":"2025-05-16T00:06:26.428Z","avatar_url":"https://github.com/eclipse-zenoh.png","language":"Rust","funding_links":[],"categories":["Official API"],"sub_categories":[],"readme":"\u003cimg src=\"https://raw.githubusercontent.com/eclipse-zenoh/zenoh/main/zenoh-dragon.png\" height=\"150\"\u003e\n\n[![CI](https://github.com/eclipse-zenoh/zenoh-python/workflows/CI/badge.svg)](https://github.com/eclipse-zenoh/zenoh-python/actions?query=workflow%3A%22CI%22)\n[![Documentation Status](https://readthedocs.org/projects/zenoh-python/badge/?version=latest)](https://zenoh-python.readthedocs.io/en/latest/?badge=latest)\n[![Discussion](https://img.shields.io/badge/discussion-on%20github-blue)](https://github.com/eclipse-zenoh/roadmap/discussions)\n[![Discord](https://img.shields.io/badge/chat-on%20discord-blue)](https://discord.gg/2GJ958VuHs)\n[![License](https://img.shields.io/badge/License-EPL%202.0-blue)](https://choosealicense.com/licenses/epl-2.0/)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\n# Eclipse Zenoh\n\nThe Eclipse Zenoh: Zero Overhead Pub/sub, Store/Query and Compute.\n\nZenoh (pronounce _/zeno/_) unifies data in motion, data at rest and computations. It carefully blends traditional pub/sub with geo-distributed storages, queries and computations, while retaining a level of time and space efficiency that is well beyond any of the mainstream stacks.\n\nCheck the website [zenoh.io](http://zenoh.io) and the [roadmap](https://github.com/eclipse-zenoh/roadmap) for more detailed information.\n\n-------------------------------\n\n# Python API\n\nThis repository provides a Python binding based on the main [Zenoh implementation written in Rust](https://github.com/eclipse-zenoh/zenoh).\n\n-------------------------------\n\n## How to install it\n\nThe Eclipse zenoh-python library is available on [Pypi.org](https://pypi.org/project/eclipse-zenoh/).\nInstall the latest available version using `pip` in a [virtual environment](https://packaging.python.org/en/latest/guides/installing-using-pip-and-virtual-environments/):\n\n```bash\npip install eclipse-zenoh\n```\n\n:warning:WARNING:warning: zenoh-python is developped in Rust.\nOn Pypi.org we provide binary wheels for the most common platforms (Linux x86_64, i686, ARMs, MacOS universal2 and Windows amd64). But also a source distribution package for other platforms.\nHowever, for `pip` to be able to build this source distribution, there are some prerequisites:\n\n- `pip` version 19.3.1 minimum (for full support of PEP 517).\n   (if necessary upgrade it with command: `'sudo pip install --upgrade pip'` )\n- Have a Rust toolchain installed (instructions at [rustup.rs](https://rustup.rs/))\n\n### Supported Python versions and platforms\n\nzenoh-python has been tested with Python 3.8, 3.9, 3.10, 3.11 and 3.12\n\nIt relies on the [zenoh](https://github.com/eclipse-zenoh/zenoh/tree/main/zenoh) Rust API which require the full `std` library. See the list in [Rust Platform Support](https://doc.rust-lang.org/nightly/rustc/platform-support.html).\n\n### Enable zenoh features\n\nTo enable some compilation features of the Rust library that are disabled by default, for example `shared-memory`, execute the following command:\n\n```bash\npip install eclipse-zenoh --no-binary :all: --config-settings build-args=\"--features=zenoh/shared-memory\"\n```\n\n-------------------------------\n\n## How to build it\n\n\u003e :warning: **WARNING** :warning: : Zenoh and its ecosystem are under active development. When you build from git, make sure you also build from git any other Zenoh repository you plan to use (e.g. binding, plugin, backend, etc.). It may happen that some changes in git are not compatible with the most recent packaged Zenoh release (e.g. deb, docker, pip). We put particular effort in mantaining compatibility between the various git repositories in the Zenoh project.\n\nRequirements:\n\n- Python \u003e= 3.8\n- pip \u003e= 19.3.1\n- (Optional) A Python virtual environment (for instance [virtualenv](https://docs.python.org/3.10/tutorial/venv.html) or [miniconda](https://docs.conda.io/en/latest/miniconda.html))\n- [Rust and Cargo](https://doc.rust-lang.org/cargo/getting-started/installation.html). If you already have the Rust toolchain installed, make sure it is up-to-date with:\n\n   ```bash\n   rustup update\n   ```\n\nSteps:\n\n- Install developments requirements:\n\n   ```bash\n   pip install -r requirements-dev.txt\n   ```\n\n- Ensure your system can find the building tool `maturin` (installed by previous step).\n  For example, it is placed at _$HOME/.local/bin/maturin_ by default on Ubuntu 20.04.\n\n   ```bash\n   export PATH=\"$HOME/.local/bin:$PATH\"\n   ```\n\n- Build and install zenoh-python:\n\n  - With a virtual environment active:\n\n     ```bash\n     maturin develop --release\n     ```\n\n  - Without one:\n\n     ```bash\n     maturin build --release\n     pip install ./target/wheels/\u003cthere should only be one .whl file here\u003e\n     ```\n\n-------------------------------\n\n## Running the Examples\n\nYou can install Zenoh Router first (See [the instructions](https://github.com/eclipse-zenoh/zenoh/?tab=readme-ov-file#how-to-install-it)).\nThen, run the zenoh-python examples following the instructions in [examples/README.md](https://github.com/eclipse-zenoh/zenoh-python/tree/main/examples#readme)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-zenoh%2Fzenoh-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feclipse-zenoh%2Fzenoh-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-zenoh%2Fzenoh-python/lists"}