Readable — produces data. Writable — consumes data. Duplex — both. Transform — modifies data in between.
Readable:
Writable:
Duplex:
Transform:
1const { Transform } = require("stream");2const upperCase = new Transform({3 transform(chunk, encoding, callback) {4 callback(null, chunk.toString().toUpperCase());5 }6});
Key difference: