const fs = require('fs');
const pi = require('pureimage');
pi.decodePNGFromStream(fs.createReadStream('image1.png')).then((img1) => {
let ctx = img1.getContext('2d');
pi.decodePNGFromStream(fs.createReadStream('image2.png')).then((img2) => {
ctx.drawImage(img2, 0, 0);
pi.encodePNGToStream(img1, fs.createWriteStream('output.png')).then(() => {
console.log('done');
});
});
});