code: function(data, path) {
        data = normalizeData(data);
  
        if (typeof path === 'string') data.path = path;
  
        // `<canvas>` element only which the QR code is rendered.
        var cvs = this.canvas(data);
  
        if (inNode) {
          writeFileSync(cvs, data);
        } else {
          download(cvs, data);
        }
      }
docs: Generate the QR code using the data provided and render it on to a `<canvas>` element and save it as an image file. If no `<canvas>` element is specified in the argument provided a new one will be created and used. ECC (error correction capacity) determines how many intential errors are contained in the QR code. If called in a browser the `path` property/argument is ignored and will simply prompt the user to choose a location and file name. However, if called within node.js the file will be saved to specified path.