# wot-rust
It is a from-scratch Rust implementation of the following Web of Things standards:
- [Thing Description 1.1](https://www.w3.org/TR/wot-thing-description11/)
- [Profile (http SSE)](https://www.w3.org/TR/wot-profile/)
- [Protocol Bindings (http, coap, mqtt)](https://w3c.github.io/wot-binding-templates)
With additional components being developed on top.
## Novelty and Importance
The main implementation of the full WoT stack is [node-wot](https://github.com/eclipse-thingweb/node-wot) with the WebThings community offering multiple implementations some parts of the pre-1.1 standards (e.g. the `webthings-arduino` implementation that DoMO used as base for the firmware for their actuators, ).
The Rust implementation aims to be modular enough so it can target both the embedded space, as the [namib-project](https://github.com/namib-project) already showcased or in the desktop/server space without reimplementing it.
This would eventually make possible to verify the main logic and behaviour of firmwares on non-embedded system (e.g. linux) and have the same source code compile to target embedded and even bare-metal targets such as `esp32-c3` leveraging the Rust ecosystem.
## Customers
The target audence for `wot-rust` is diverse:
- Companies that want to bring to market products that are compatible with WoT may find interesting having a pure rust implementation.
- Companies that want have their existing platforms interoperate with WoT devices.
## Competition
There are two kind of competitors:
- The ones providing implementations of the WoT standard. We mentioned already `node-wot` and `webthings`, but they target different segments of the market, the former the server side and browser/client side, the latter covers specifically the embedded/arduino targets.
- The ones providing implementations of competing standards, such as zigbee, its evolution, Matter, or Fiware. There aren't ready to use, opensource implementations that provide a similar vertical coverage, either because the scope of the standard implemented is more narrow or because the standard is potentially too novel.
## Market