Skip to content
IoT.js implementation of WebThing API (based on Mozilla-IoT's webthing-node)
JavaScript Makefile Dockerfile Shell
Branch: master
Clone or download
rzr doc: Fix markdown style
Change-Id: I19a6178530555b2b505d0a9c34add9d3c5247806
Signed-off-by: Philippe Coval <>
Latest commit 67feaec Aug 27, 2019


GitHub forks license Build Status NPM pulls Automated Builds Build Status Codacy Badge FOSSA Status IRC Channel




Webthing-iotjs is derived of webthing-node project (supporting Node.js) but adapted for IoT.js runtime (based on JerryScript engine for constrained devices).

This downstream project plans to keep aligned to upstream and only focus on IoT.js port.

New contributions should be submitted to webthing-node first and then should land here (once rebased on webthing-node's master branch).


After installing IoT.js program on your system, you can get started by running example program

iotjs -h

iotjs example/multiple-things.js 
# setting new humidity level: 18.207531485648474

curl T -H 'Content-Type: application/json'  http://localhost:8888/
# [{"name":"My Lamp","href":"/0", (...)  "href":"/1/properties/level"} .. (...) }]

curl T -H 'Content-Type: application/json'  http://$HOSTNAME:8888/1/properties/level
# {"level":42.666}

Then thing can be monitored once connected to Mozilla IoT gateway using the Thing Web URL adapter.

Also you can control a "Simplest Thing" which is just simulating an actuator (LED, switch, relay...).

iotjs example/simplest-thing.js 
# Usage:
# iotjs example/simplest-thing.js [port]

curl -X PUT -H 'Content-Type: application/json' --data '{"on": true }' http://localhost:8888/properties/on
# {"on":true}

Then this thing can be connected to gateway, and rules configured to use the actuator.


For more insights and details please follow guide about setting up gateway, iotjs and demos howtos:




FOSSA Status

You can’t perform that action at this time.