Web of Things
W3C

Developer Resources

There are various resources available to build Web of Things applications. These are libraries, ready-to-use software, services or SDKs, which can be used in different stages of development or for development needs and are grouped below.


 

 

 


TD Tooling

Tools that allow editing and validation of TDs or that allow parsing them in programming language specific environments.

WoT Development Tools

Ready-to-use tools that help the development of WoT applications by providing user interfaces and other tooling.

Runtime Implementations for TD Exposers

Software libraries that implement a WoT Runtime so that Things can be built following the WoT paradigms.

  • Eclipse Thingweb node-wot - W3C Web of Things implementation in Node.js with support for multiple bindings. A website is available at Thingweb.
  • WoT Integration for Eclipse Ditto - Ditto managed digital twins can be linked to WoT Thing Models from which Ditto can create Thing Descriptions containing the API descriptions of the twins.
  • SANE WoT Servient - W3C Web of Things implementation in Java with support for multiple bindings, inspired from node-wot.
  • wot-py - Experimental W3C Web of Things implementation in Python with support for multiple bindings.
  • SIFIS-Home: wot-serve - Rust crate to serve Web of Things Things.

Runtime Implementations for TD Consumers

Software libraries that implement a WoT Runtime so that Things can be consumed and custom applications can be built on top, following the WoT paradigms.

  • Eclipse Thingweb node-wot - W3C Web of Things implementation in Node.js with support for multiple bindings. A website is available at Thingweb.
  • Node-Red Node generator - CLI tool to generate WoT Consumer Nodes for Node-RED from a TD. Additional information at slides or video.
  • dart_wot - W3C Web of Things implementation written in Dart with support for HTTP and CoAP.
  • SANE WoT Servient - W3C Web of Things implementation in Java with support for multiple bindings, inspired from node-wot.
  • wot-py - Experimental W3C Web of Things implementation in Python with support for multiple bindings.

TD Directory (TDD) Implementations

Services that host a Thing Description Directory which implements the W3C WoT Discovery specification.

WoT Software and Middleware

Ready to use software applications that can be deployed in order to provide a certain functionality in a system, such as gateway and proxying, simulation, testing services.

  • sayWoT! - Industrial-grade implementation that allows integration of devices into Siemens software products.
  • Web of Things Test Bench - CLI based tool that tests a WoT Thing by executing interactions automatically, based on its TD.
  • WebThings Gateway - An open source Web of Things gateway for smart buildings, which bridges a wide range of IoT protocols to the Web of Things.
  • UA Edge Translator - An industrial connectivity edge reference application translating from proprietary protocols to OPC UA leveraging the W3C Web of Things (WoT) Thing Descriptions.
  • VO-WoT - A Python-based stack that allows developing WoT Things with additional functionalities, called Virtual Objects (VOs). A documentation website is available here.
  • Shadow Thing - CLI based tool for creating and deploying a Thing based on its TD for simulation, proxy or protocol translation purposes.

Others

Online Things

Publicly accessible Things that can be used during development to test Consumer applications or learn how to understand Thing Descriptions to communicate with Things.