IoT is currently built on vertical proprietary silos. Mozilla / W3C wants to build something that can create a Web of Things, that allows different devices to work together.
It puts itself at the highest layer of the stack, so different lower layers should be supported. It make IoT decentralised. It gives devices an URL on the web. W3C and a lot of its backing companies developed a standard, Mozilla is making an open source Things implementation.
The Things gateway is essentially a web service. The backend (currently NodeJS, should be ported to Rust) accesses IoT devices through adapters specific to the IoT communiction protocol (e.g. MQTT). They can be distributed as add-ons.
Things gives the power back to the user: no subscription, data stays in your home.
Things UI (running on the gateway), in addition to turning things on/off, also has a Rules engine for automation, floorplans, Smart Assistant for voice control (with local voice interface, no cloud stuff).
The gateway is accessible from name.iot.mozilla.org, but the functionality remains on the gateway.
Demo device is Raspbian, but the packages are integrated on OpenWRT.