{"id":15132038,"url":"https://github.com/eclipse-iceoryx/iceoryx","last_synced_at":"2026-05-20T00:08:12.669Z","repository":{"id":36950702,"uuid":"202178302","full_name":"eclipse-iceoryx/iceoryx","owner":"eclipse-iceoryx","description":"Eclipse iceoryx™ - true zero-copy inter-process-communication","archived":false,"fork":false,"pushed_at":"2025-04-28T15:59:37.000Z","size":23943,"stargazers_count":1787,"open_issues_count":252,"forks_count":417,"subscribers_count":66,"default_branch":"main","last_synced_at":"2025-04-28T16:55:23.506Z","etag":null,"topics":["autosar-adaptive","client-server","cpp","cyclonedds","dds","eclipse","iceoryx","inter-process-communication","ipc","middleware","publish-subscribe","pubsub","request-response","ros2","shared-memory","zero-copy"],"latest_commit_sha":null,"homepage":"https://iceoryx.io","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eclipse-iceoryx.png","metadata":{"files":{"readme":"README.md","changelog":null,"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":"GOVERNANCE.md","roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-08-13T15:57:02.000Z","updated_at":"2025-04-28T15:59:43.000Z","dependencies_parsed_at":"2023-09-23T09:05:42.696Z","dependency_job_id":"30f8b78c-22a4-473c-812f-07e160e6424a","html_url":"https://github.com/eclipse-iceoryx/iceoryx","commit_stats":null,"previous_names":["eclipse/iceoryx"],"tags_count":38,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-iceoryx%2Ficeoryx","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-iceoryx%2Ficeoryx/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-iceoryx%2Ficeoryx/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-iceoryx%2Ficeoryx/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eclipse-iceoryx","download_url":"https://codeload.github.com/eclipse-iceoryx/iceoryx/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254069178,"owners_count":22009500,"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":["autosar-adaptive","client-server","cpp","cyclonedds","dds","eclipse","iceoryx","inter-process-communication","ipc","middleware","publish-subscribe","pubsub","request-response","ros2","shared-memory","zero-copy"],"created_at":"2024-09-26T04:02:22.767Z","updated_at":"2026-05-20T00:08:12.661Z","avatar_url":"https://github.com/eclipse-iceoryx.png","language":"C++","funding_links":[],"categories":["Inter-process communication"],"sub_categories":[],"readme":"[![Build \u0026 Test](https://github.com/eclipse-iceoryx/iceoryx/workflows/Build%20\u0026%20Test/badge.svg)](https://github.com/eclipse-iceoryx/iceoryx/actions/workflows/build-test.yml?query=branch%3Amain++)\n[![Cirrus CI](https://img.shields.io/cirrus/github/eclipse-iceoryx/iceoryx/main?label=Cirrus%20CI)](https://cirrus-ci.com/github/eclipse-iceoryx/iceoryx/main)\n[![Gitter](https://badges.gitter.im/eclipse-iceoryx/iceoryx.svg)](https://gitter.im/eclipse/iceoryx)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)\n[![Codecov](https://codecov.io/gh/eclipse-iceoryx/iceoryx/branch/main/graph/badge.svg?branch=main)](https://codecov.io/gh/eclipse-iceoryx/iceoryx?branch=main)\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/8661268/114321508-64a6b000-9b1b-11eb-95ef-b84c91387cff.png\" width=\"50%\"\u003e\n\u003c/p\u003e\n\n# iceoryx - true zero-copy inter-process-communication\n\nThis is the original implementation written in C++. For the Rust-based next-gen implementation, please have a\nlook at [iceoryx2](https://github.com/eclipse-iceoryx/iceoryx2).\n\n1. [Introduction](#introduction)\n   1. [Supported Platforms](#supported-platforms)\n   2. [Where is Eclipse iceoryx used](#where-is-eclipse-iceoryx-used)\n2. [Build and install](#build-and-install)\n3. [Examples](#examples)\n4. [Build and run in a Docker environment](#build-and-run-in-a-docker-environment)\n5. [Documentation](#documentation)\n6. [Quality levels and platforms](#quality-levels-and-platforms)\n7. [Contribute](#contribute)\n8. [Planned features](#planned-features)\n9. [Bindings and innovations enabled by iceoryx](#bindings-and-innovations-enabled-by-iceoryx)\n10. [Frequently Asked Questions](#frequently-asked-questions)\n11. [Commercial Support](#commercial-support)\n12. [Governance and maintainers](#governance-and-maintainers)\n\n## Introduction\n\nGreat that you've made it to this neat Eclipse project! Let's get you started by providing a quick background\ntour, introducing the project scope and all you need for installation and a first running example.\n\nSo first off: What is iceoryx?\n\niceoryx is an inter-process-communication (IPC) middleware for various operating systems (currently we support Linux,\nmacOS, QNX, FreeBSD and Windows 10).\nIt has its origins in the automotive industry, where large amounts of data have to be transferred between different processes\nwhen it comes to driver assistance or automated driving systems. However, the efficient communication mechanisms can also be applied\nto a wider range of use cases, e.g. in the field of robotics or game development.\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/8661268/74612998-b962bc80-510a-11ea-97f0-62f41c5d287b.gif\" width=\"100%\"\u003e\n\u003c/p\u003e\n\niceoryx uses a true zero-copy, shared memory approach that allows to transfer data from publishers to subscribers without a single copy.\nThis ensures data transmissions with constant latency, regardless of the size of the payload. For more information have a look at the\n[1000 words iceoryx introduction](https://www.eclipse.org/community/eclipse_newsletter/2019/december/4.php).\n\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/56729607/157733625-e3e61617-2f72-46ba-b4f2-5a3973f9ad6f.png\" width=\"80%\"\u003e\n\u003c/p\u003e\n\nYou're right, middleware is a cluttered term and can somehow be all or nothing. To get a better impression what\nthis means for iceoryx, please have a look at our [goals and non-goals](doc/goals-non-goals.md).\n\nDon't get too frightened of the API when strolling through the examples. Think of the untyped C++ and the C API as a\n\"plumbing\" one (\"plumbing\" as defined in Git, which means low-level). We're not using the \"plumbing\" APIs ourselves, but\ninstead the typed C++ API. The normal use case is that iceoryx is integrated as high-performance IPC transport layer in\na bigger framework with additional API layers.\nAn example for such a \"porcelain\" API would be [ROS 2](https://www.ros.org/).\n\nYou can find the full API documentation on 🌐 [https://iceoryx.io](https://iceoryx.io). \u003c!--NOLINT explicit link to website--\u003e\n\n### Supported Platforms\n\nModification or addition of new platforms is described in the\n[custom iceoryx platforms](doc/website/advanced/custom-iceoryx-platform.md) article.\n\n|Operating System| Compiler  | supports access rights for shared memory | command line parsing    |\n|----------------|-----------|:----------------------------------------:|:-----------------------:|\n| Linux          | gcc/clang | yes                                      | yes                     |\n| QNX            | gcc       | yes                                      | yes                     |\n| MacOS          | clang     | no, not planned for implementation       | yes                     |\n| Windows 10     | msvc      | no, not planned for implementation       | will be implemented     |\n| FreeBSD (Unix) | clang     | no, not planned for implementation       | yes                     |\n\nIn general unix platforms should work with iceoryx but we only test FreeBSD on our CI.\n\n### Where is Eclipse iceoryx used\n\n|Framework | Description |\n|---|---|\n| [ROS 2](https://github.com/ros2/rmw_iceoryx) | Eclipse iceoryx can be used inside the [Robot Operating System](https://www.ros.org/) with [rmw_iceoryx](https://github.com/ros2/rmw_iceoryx.git) |\n| [Eclipse eCAL](https://eclipse-ecal.github.io/ecal/) | Open-source framework from [Continental AG](https://www.continental.com/) supporting pub/sub and various message protocols |\n| [RTA-VRTE](https://www.etas.com/en/products/rta-vrte.php) | [AUTOSAR Adaptive Platform](https://www.autosar.org/standards/adaptive-platform/) software framework for vehicle computer from [ETAS GmbH](https://www.etas.com) |\n| [Cyclone DDS](https://github.com/eclipse-cyclonedds/cyclonedds) | Performant and robust open-source DDS implementation maintained by [ZettaScale Technology](https://zettascale.tech/) |\n| [Apex.Ida from Apex.AI](https://www.apex.ai/apexida) | Safe and certified middleware for autonomous mobility systems from [Apex.AI](https://www.apex.ai/) |\n| AVIN AGNOSAR Adaptive Platform | AUTOSAR Adaptive Platform Product from AVIN Systems |\n\n## Build and install\n\nYou can find the build and installation guidelines [here](doc/website/getting-started/installation.md).\n\n## Examples\n\nAfter you've built all the necessary things, you can continue playing around with the [examples](./iceoryx_examples/README.md).\n\n## Build and run in a Docker environment\n\nIf you want to avoid installing anything on your host machine but you have Docker installed, it is possible to use it to build and run iceoryx applications.\n\nPlease see the dedicated [README.md](tools/docker/README.md) for information on how to do this.\n\n## Documentation\n\n* [Getting Started](doc/website/getting-started/overview.md)\n* [Installation Guide](doc/website/getting-started/installation.md)\n* [iceoryx Hoofs Hacker Guide](iceoryx_hoofs/README.md)\n\n### Quality levels and platforms\n\n\u003e [Quality level](./CONTRIBUTING.md#quality-levels) are 5 to 1+, where 1+ is the highest level.\n\nPlease see the [Quality Declaration](./QUALITY_DECLARATION.md) for details of the quality measures according to ROS 2 guidelines.\n\n|CMake project/target   | Current Level | Target Level QNX  | Target Level \u003cbr\u003e Linux, Windows, macOS |\n|-----------------------|:-------------:|:-----------------:|:---------------------------------------:|\n| iceoryx_hoofs         | 2             | 1+                | 1                                       |\n| iceoryx_posh          | 2             | 1+, 2             | 1                                       |\n| iceoryx_binding_c     | 2             | 2                 | 2                                       |\n| iceoryx_examples      | 5             | 4                 | 4                                       |\n| iceoryx_introspection | 5             | 4                 | 4                                       |\n| iceoryx_meta          | 5             | 5                 | 5                                       |\n\nIs something missing or you've got ideas for other nifty examples? Jump right away to the next section!\n\n## Contribute\n\nPlease refer to the [CONTRIBUTING.md](./CONTRIBUTING.md) for a quick read-up about what to consider if you want to contribute.\n\n## Planned features\n\nGet to know the upcoming features and the project scope in [PLANNED_FEATURES.md](./PLANNED_FEATURES.md).\n\n## Bindings and innovations enabled by iceoryx\n\n|Name                                                                                 | Description                                                      | Technologies |\n|-------------------------------------------------------------------------------------|------------------------------------------------------------------|--------------|\n| [iceoryx-rs](https://github.com/eclipse-iceoryx/iceoryx-rs)                         | Rust binding for iceoryx                                         | Rust         |\n| [iceoryx-automotive-soa](https://github.com/eclipse-iceoryx/iceoryx-automotive-soa) | Binding for automotive frameworks like AUTOSAR Adaptive ara::com | C++          |\n| [iceoryx-gateway-dds](https://github.com/eclipse-iceoryx/iceoryx-gateway-dds)       | Gateway for Cyclone DDS                                          | DDS          |\n| [iceray](https://github.com/elBoberido/iceray)                                      | An iceoryx introspection client written in Rust                  | Rust         |\n| [Larry.Robotics](https://gitlab.com/larry.robotics)                                 | An iceoryx demonstrator for tinker, thinker and toddler          | Demonstrator |\n\n## Frequently Asked Questions\n\n[FAQ.md](./doc/website/FAQ.md)\n\n## Commercial Support\n\n\u003c!-- prettier-ignore-start --\u003e\n\u003c!-- markdownlint-disable --\u003e\n\n\u003ctable width=\"100%\"\u003e\n  \u003ctbody\u003e\n    \u003ctr\u003e\n      \u003ctd align=\"center\" valign=\"top\" width=\"33%\"\u003e\n        \u003ca href=\"https://ekxide.io\"\u003e\n        \u003cimg src=\"https://github.com/eclipse-iceoryx/iceoryx/assets/56729169/23ebd670-45ce-4d41-885c-afd1c1835709\" alt=\"ekxide IO GmbH\"/\u003e\u003cbr /\u003e\n        \u003c/a\u003e\n        \u003ca href=\"mailto:info@ekxide.io\"\u003einfo@ekxide.io\u003c/a\u003e\n      \u003c/td\u003e\n      \u003ctd\u003e\n        \u003cul\u003e\n          \u003cli\u003ecommercial extensions and tooling\u003c/li\u003e\n          \u003cli\u003ecustom feature development\u003c/li\u003e\n          \u003cli\u003etraining and consulting\u003c/li\u003e\n          \u003cli\u003eintegration support\u003c/li\u003e\n          \u003cli\u003eengineering services around the iceoryx ecosystem\u003c/li\u003e\n        \u003c/ul\u003e\n      \u003c/td\u003e\n    \u003c/tr\u003e\n  \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003c!-- markdownlint-restore --\u003e\n\u003c!-- prettier-ignore-end --\u003e\n\n## Governance and maintainers\n\nPlease have a look at the [GOVERNANCE.md](./GOVERNANCE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-iceoryx%2Ficeoryx","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feclipse-iceoryx%2Ficeoryx","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-iceoryx%2Ficeoryx/lists"}