The place where you can create and play with WoT Thing Descriptions. Try it online at https://playground.thingweb.io/
There are different ways to use Playground:
npm install
in the root directory. This script calls lerna bootstrap
.The structure of all Playground packages is shown here:
All packages (except CLI and Web) are designed to be used as an imported package in a Node.js project or as a web bundle in a Web application. This allows them to be used in the Web package as part of a Web UI or inside the CLI.
Both packages are used by the Web and CLI packages to provide their functionalities, plus IO functionalities through a UI.
The packages in this repository are available under (packages folder) or on NPM under @thing-description-playground/packageName.
Reusable packages:
End Product Packages:
Examples are included in the core and in the examples folder at the root of the project.
Online: It is hosted here
@context
(can be turned off)Offline/OnPremise: by hosting the web
yourself. Therefore, please deliver the "index.html" file with a web-server.
Please have a look at the cli
package for batch testing of Thing Descriptions.
Please have a look at the cli
package for script-based assertion testing, or at the assertions
package, if you're planning to integrate the assertion testing as a dependency in your own NPM modules.
Please have a look at the cli
package for script-based TD validation, or at the core
package, if you're planning to integrate the TD validation as a dependency in your own NPM modules.
All packages are licensed under the Eclipse Public License v. 2.0. You find a copy of the License here.
lerna bootstrap
to install dependencies among the packages, even if a package has never been published before. Make sure you have not increased the dependency versions yet, e.g., you have a new package newExample and the oldExample depends on it. The newExample is on version 0.0.0
(since you want to publish it as 1.0.0
) then in the oldExample package.json the dependency has to be on the same version (or lower) so "dependencies" { newExample: "^0.0.0"}}
. Otherwise lerna will not accept linking the local newExample.lerna bootstrap
was successful you can now bump dependency versions (if required), e.g., you could now do "dependencies" { newExample: "^1.0.0"}}
in the oldExample package.json.lerna publish
to publish all the new package versions. Lerna will then ask for every changed package whether it received a patch, minor or major update. In our example, you should now select major for the newExample so that it will be published as 1.0.0
version. You should log in to npm via npm login
before doing this.One can use the VS Code plugin at https://marketplace.visualstudio.com/items?itemName=angelo-breuer.license-header-manager to updating the copyright fields on top of each file.
If you are using Eclipse Thingweb Playground within your organization, please support us by adding your logo to the Eclipse IoT adopters list. To do so, simply open an issue at the Eclipse Gitlab by providing the name of your organization, its logo, and a link to your organization or team. You should be affiliated with that organization for the issue to be implemented.