House of Things is a complete IoT platform: device firmware, a hosted backend, native apps, multi-site hosting, and a space-first MQTT/NATS message contract. Bring your hardware, your workflow and your brand — we adapt the pieces to fit, so you never rebuild the backend, the mobile apps and the plumbing yourself.
We run House of Things for you — there is no server to self-host. You bring the devices, workflow and brand; we host and operate the stack.
Your own dedicated instance on our infrastructure — provisioned, run, patched and monitored by us. Custom device types, white-label apps, multi-site spaces on your domain, fleet and billing. You operate your devices; we operate the platform.
For larger clients who fund a dedicated team: everything in a hosted instance, plus access to the codebase so your own engineers build alongside ours. A deeper, co-development relationship with roadmap influence — a partner, not just a tenant.
Every physical, virtual and service-backed thing lives under a user or a space. Devices get backend-assigned base62 IDs when attached, so MAC addresses stay out of topics, URLs, logs and partner-facing contracts.
MQTT is organized the same way as NATS: space first, then device, hub or service, then state, cmd, config, event, telemetry or announce. The space remains the shard and tenant boundary across transports.
Run partner logic where it fits: on capable devices, on the hub, or as space-attached services. Desired logic is retained as config; running state is reported back separately so rollout and recovery are visible.
Native iOS and Android apps, web dashboards, customer-facing Explorator pages and wall panels all read the same endpoint and service model instead of each surface inventing its own device vocabulary.
Telemetry is a stream, not retained state. Samples flow through JetStream buffers into compressed monthly history blocks with a Valkey hot cache for fast dashboards and recent charts.
The v0.0.3 wire contract makes devices, hubs and services addressable by owner and space first. MQTT topics mirror NATS subjects, use a small fixed verb set, and keep ownership, history and access control explicit.
The canonical path starts with the owner boundary: space traffic under space/id and pre-space user-attached WiFi devices under user/id. MQTT and NATS keep the same shape, so the adapter does not need per-feature routing rules.
A device receives an opaque 11-character ID when it is attached to an account. Unowned devices have no MQTT access, user-attached devices are limited, and space-assigned devices get the full class set.
State is retained reported truth, config is retained desired state, cmd is a non-retained imperative, event is transient, telemetry is streamed history, and announce describes the device or service. HID, scripts, values, heartbeat and logs fold into that model.
Hubs are always space-bound and keyed by hub ID. Services are space-attached virtual actors with no endpoint scope, so they can publish state, events and telemetry beside devices without pretending to be hardware.
User-attached devices can be seen and controlled, but they do not emit events or accrue telemetry history until assigned to a space. That keeps ownership, privacy and billing boundaries aligned.
MQTT v2 is the v0.0.3 wire contract. It ships as one breaking fleet reflash with the payload envelope, command IDs, authenticated broker roles, NATS account work and NanoMQ migration path closed together.
hiot isn't a fixed app — it's a stack you extend. Every item below maps to a real platform capability you can shape to your product.
Define custom (type, variant) devices with typed capabilities, content and logic — from ESP32 / ESP8266 firmware to any MQTT or HTTP source. Physical, virtual and Android-panel devices all share one model.
Run your own code on the device (WASM, Lua or Ruby) or server-side for virtual devices — content-addressed and hot-updated over the air, no reflash.
Ship to your whole fleet remotely — signed, content-addressed (SHA-256) firmware images and hot-reloaded on-device scripts, pushed over MQTT with versioning and rollback, so a fix never means a site visit.
Ship a branded iOS + Android app — your name, icon and colors — on the shared engine, the way our Restaurant and Explorator brands already do.
Give your team the hiot power app and lock Android tablets into wall panels for the floor. Give customers an Explorator presence to discover and use your devices — tap-to-order, controls and live info, with nothing to install.
Design device panels as flexbox content documents that render natively on web, iOS, Android and wall-mounted tablets. Your widgets, layout and style cascade.
Home-screen, lock-screen and Quick-Settings widgets that are a live, controllable interface to an endpoint — not a screenshot. iOS WidgetKit + Android Glance on the same (type, variant) model, in both the power app and Explorator.
Group locations into spaces, each with its own white-label website on your domain, access roles and per-space branding — one tenant, many sites.
For landlords renting flats: expose guest-safe access while keeping cost control — heating limits, scheduled availability, metered usage and remote lockout for expensive devices after checkout.
Schedules, thresholds and a rule engine on the server, plus a documented REST API, WebSocket stream and share tokens to wire hiot into your existing systems.
Expose one space-first contract across MQTT and NATS: MQTT topics map to NATS subjects by separator, services connect through runner grants, and non-MQTT systems such as CoAP, LwM2M, OCPP or fleet gateways attach through adapter services.
Direct push to iOS and Android (APNs + FCM) for sensor thresholds, security events and device-offline — with per-user preferences and a simulator to prove the wiring before a real trigger ever fires.
First-party, server-side usage insights — no third-party trackers — plus a partitioned per-device event history with daily rollups, retention windows and an admin dashboard, all on your own infrastructure.
QR / NFC / deep links, per-site short domains and anonymous guest sessions — the tap-to-order flow restaurants use, reusable for any customer-facing surface.
Publish endpoints to a map so customers "find devices near me" in Explorator — location-scoped discovery with public, member and request-access tiers, anonymous-friendly, no install required.
For access, vault and high-trust taps: NXP NTAG 424 DNA cards where every tap is cryptographically signed on-chip and verified server-side — clones and screenshots are rejected, so a copied sticker or a shared link simply stops working.
Optional hardening for high-stakes deployments — Play Integrity, App Attest and TLS SPKI pinning behind a versioned key registry, with a soft-warn read-only fallback and independent per-environment enable flags.
Local-first by design: your devices and Hub keep working on the LAN and over BLE with no internet and no server in the loop, so you can control and observe near the device even during an outage. Your data stays yours too — first-party storage on your own dedicated instance, with no third-party trackers, mining or reselling.
Provision and claim devices at fleet scale, lock Android tablets into kiosk wall panels, and — if you resell — bill your own customers through built-in subscriptions.
What the platform is actually built on — so you can judge the fit before we talk. Every item is a real dependency in the system, across firmware, backend, web, mobile and the edge.
Tell us about your hardware and your goal — we'll scope the fit and reply within a business day.