HOUSE OF THINGS
FOR BUSINESS & PARTNERS

Orchestrate your devices on our stack.

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.

Space-first messaging · custom device types · white-label apps · your domains · offline-proof · your data stays yours
01Work with us

Two ways to work with us

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.

Hosted instance

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.

Partnership

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.

02The system

How the system fits together

Identity & ownership

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.

Space message bus

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.

Logic & scripting

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.

Apps & surfaces

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.

History & storage

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.

03Message contract

Space-first MQTT, aligned with NATS.

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.

Space-first routing

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.

Private device identity

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.

One verb 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 and services are targets

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.

History starts at the space

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.

Versioned rollout

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.

04Capabilities

What you can extend

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.

Your own device types

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.

Logic where it fits

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.

Over-the-air updates

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.

White-label apps

Ship a branded iOS + Android app — your name, icon and colors — on the shared engine, the way our Restaurant and Explorator brands already do.

Apps for staff & customers

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.

Custom screens as data

Design device panels as flexbox content documents that render natively on web, iOS, Android and wall-mounted tablets. Your widgets, layout and style cascade.

Live home-screen widgets

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.

Multi-site & custom domains

Group locations into spaces, each with its own white-label website on your domain, access roles and per-space branding — one tenant, many sites.

Rental property controls

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.

Integrate & automate

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.

Messaging & protocol compatibility

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.

Notifications & alerts

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.

Analytics & insights

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.

Frictionless entry

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.

Find & discover nearby

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.

Verified secure access (NFC)

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.

App integrity & trust

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.

Offline-proof & private

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.

Fleet, panels & billing

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.

Shaped with partners across
Restaurants & hospitalityHotels & short-stay rentalsProperty & facilitiesRetail & digital signageDevice makers & OEMsAgriculture & environmentEnergy & meteringAccess & securityInstallers & integrators
05The stack

Our tech stack

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.

Devices & firmware

CESP-IDFESP32 · ESP8266 · ESP32-S3FreeRTOSESP-NOWMQTT v2BLENFC

Backend & data

PythonFastAPIasyncpgSQLAlchemyPostgreSQLNATSJetStreamValkeyWebSockets

Web

TypeScriptReactVite

Mobile

Jetpack Compose (Android)SwiftUI (iOS)

On-device & virtual logic

WASM (wasm3 · WAMR)Luamruby/cZigSpace services

Edge & infrastructure

Rust MQTT/NATS adapterNanoMQ migration pathRust reverse proxy (rustls · ACME)DebianForgejo CI/CDVictoriaLogs · Vector · Grafana

Let's build it together.

Tell us about your hardware and your goal — we'll scope the fit and reply within a business day.