Concepts
Fundamentals
A hyveOS network, or in short hyve
, is a set of machines, called hyve
nodes, that run hyveOS and are locally near to each other, such that they are connected via the mesh.
You can think of a hyve
as a self organizing network that is able to operate in isolation, however to bootstrap and debug your network, you need access to at least one node.
Each node in the network is uniquely identified by its ID, called node-id
or peer-id
, which can be retrieved by
hyvectl whoami
This peer-id
is used for identification across the network and won’t change once the network is set up.
Services
Next to the mesh connectivity, hyveOS core functionality comes from a set of decentralized services that can be used as networking and orchestration primitives for multi-robot systems. Currently, 5 decentralized services are available.
put
and get
interface plus the ability to mark specific nodes as providers
, which can be used as a pattern for building and retrieving certain roles for nodes publish
and get
interface, for sending large blobs of data efficiently through the network Each of these services can be used in the terminal with hyvectl
and are exposed in the multi-language SDK, which currently supports Python, Rust, and Typescript.
Higher-level orchestration tools like leader election and task scheduling are in progress. If you have a suggestion, let us know and file an issue!
hyveOS Workflow
We provide a default workflow of developing applications for a hyve network, involving
-
Writing decentral application code using our sdks
drone.py from hyveos_sdk import Connection...def main():async for msg in pubsub.subscribe("topic"):foo()... -
Using
docker
to package your code based on one of our base images:FROM ghcr.io/p2p-industries/hyveos-base-python:mainCOPY drone.py /app/drone.py... -
Building the image
Terminal window docker build -t drone-application . -
Ship and deploy the application on remote peers directly over the hyve network
Terminal window hyvectl hyve start drone-application <PEER_ID>
© 2025 P2P Industries. This documentation is licensed under the MIT License.
Cookie Policy
Privacy Policy