• this raises an important question for me - is it possible to work with specific module versions (entangled with firmware if needed) ?

    from

    var sensor = require("ADNS5050").connect(SPI3, B6); 
    

    to

    var sensor = require("ADNS5050", "1.0.2").connect(SPI3, B6); // or '1.0.+' or '1.+' or no version = latest
    

    would be perfect to get more stable code and important hints to the exact cause of "never changed code, but now it explodes" problems

    if the version is part of the require api, some sort of header informations or even a module.versions file per project does not matter, it could even be near/identical to node.js/NPM with a package.info file which contains even more nice informations for building, packaging, etc. (e.g. which espruino firmware version this javacode depends on...)

    combine that with some "building info" e.g. print out of used firmware/module versions (inside WEB IDE or running espruino as well) :-)

About