Skip to main content

Realms

A realm is a space within which something happens. It can be as small as a single room or as large as the entire world. All other concepts, such as Objects, Areas, Instructions, Subscriptions, exist within the scope of a realm.

So, how big should your realms be?​

To get the best performance out of Hivekit, your realms should encapsulate all objects that need to interact with each other, but not more. Here are some examples:

  • If you're providing car sharing or e-scooter services across multiple cities, make each city a realm. All the vehicles, customers, and maintenance personnel within a given city need to interact with each other, but each city is an isolated area and doesn't interact with other cities.

  • If you're running construction sites, it makes sense to make each construction site its own realm - unless you need to track deliveries and staff between sites, in which case it might be better to make the whole city or area you operate in a realm.

  • If you're running an airline and want to show global flight paths - create a realm for the whole world. However, if you also wish to cover ground traffic at airports, it might make sense to create a separate realm for each airport and transition the planes between the global realm and the airports as they take off and land.

Realm Meta Data​

Just as with any other concept within Hivekit, realms allow you to store arbitraty data. The realm's data is a great place to keep global settings, such as object categories, visualisations, overlays or any other information that's not directly associated with a specific object, area or instruction.