There are various tools developed by the community that are open source and ready to use. They can be used in different stages of development or development needs and are grouped below.
In addition to general categories, each tool has different features that are marked with badges underneath. All identified features are listed below:
Tools that allow editing and validation of TDs or that allow parsing them in programming language specific environments.
Ready-to-use tools that help the development of WoT applications by providing user interfaces and other tooling.
Software libraries that implement a WoT Runtime so that Things can be built following the WoT paradigms.
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.
Services that host a Thing Description Directory which implements the W3C WoT Discovery specification.
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.
In addition to general categories, each tool has different features that are marked with badges. Click on a badge to filter tools accordingly.
Tool | Description | Features |
---|---|---|
Thing Description Playground | Reference TD Validation suite with additional tools such as OpenAPI generation, linting and more. | + |
Eclipse Edi{TD}or | Web based Editor for easy creation and visualization of Thing Descriptions and Thing Models. | + |
TD-Code | Visual Studio Code plugin for TD validation and code snippets. |
- |
WoT-JTD | Java module for creating Java Thing Description ORM from a TD in JSON-LD or RDF triples | - |
Eclipse Ditto :: WoT :: Model | Java module for using TDs and TMs. | - |
WoT Application Manager (WAM) | CLI tool to quickly set up node-wot application projects. Additional information available at slides or
video. |
- |
WoT API Development Environment (WADE) | Desktop application based on node-wot, Vue.js and Electron that allows interaction with Things, profiling, Mashup generation. | User Interface TD Tooling (UI) Exposer Consumer Simulation Testing |
WoT FXUI | UI for desktop, mobile, browser for interacting with Things based on their TDs. |
+ |
Eclipse Thingweb node-wot | W3C Web of Things implementation in Node.js with support for multiple bindings. A website is available at Thingweb. | - |
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. | - |
WoTPy | Experimental W3C Web of Things implementation in Python with support for multiple bindings. | - |
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. | - |
LinkSmart Thing Directory | TDD implementation with features such as DNS-SD registration, XPath 3.0 and JSONPath queries, authentication and more. | - |
WoTHive Thing Directory | TDD implementation with features such as SPARQL and JSONPath queries, SHACL-based Validation and more. | - |
Siemens-Logilab Thing Directory | TDD implementation with features such as SPARQL queries, contextual validation and more. | - |
Shadow Thing | CLI based tool for creating and deploying a Thing based on its TD for simulation, proxy or protocol translation purposes. | - |
sayWoT! | Industrial-grade implementation that allows integration of devices into Siemens software products. | - |
Test Bench | CLI based tool that tests a WoT Thing by executing interactions automatically, based on its TD. | - |
WoT Plugin for AASX Package Explorer | Plugin to import/export WoT Thing Description into Asset Administration Shell definitions. | - |
WoTify | A community based collection of devices that have been WoT-enabled. | - |