Skip to content

Instantly share code, notes, and snippets.

@jrson83
Forked from lmammino/cp.js
Created January 20, 2023 17:28
Show Gist options
  • Save jrson83/1fe17f6d98f1e41a9a7af81b0e696848 to your computer and use it in GitHub Desktop.
Save jrson83/1fe17f6d98f1e41a9a7af81b0e696848 to your computer and use it in GitHub Desktop.
Session about Node.js streams with Kelvin
import { createReadStream, createWriteStream } from 'fs'
const source = createReadStream('./assets/moby-dick.txt')
const dest = createWriteStream('./assets/moby-dick-decompressed.txt')
source
.pipe(dest)
import { createReadStream, createWriteStream } from 'fs'
import { createGunzip } from 'zlib'
const source = createReadStream('./assets/moby-dick.txt.gz')
const decompress = createGunzip()
const dest = createWriteStream('./assets/moby-dick-decompressed.txt')
source
.pipe(decompress)
.pipe(dest)
import { createReadStream, createWriteStream } from 'fs'
import { createBrotliCompress, createGzip, createDeflate } from 'zlib'
const source = createReadStream('./assets/moby-dick.txt')
const destGzip = createWriteStream('./results/moby-dick.txt.gz')
const destBrotli = createWriteStream('./results/moby-dick.txt.br')
const destDeflate = createWriteStream('./results/moby-dick.txt.deflate')
const gzip = createGzip()
const brotli = createBrotliCompress()
const deflate = createDeflate()
source
.pipe(gzip)
.pipe(destGzip)
source
.pipe(brotli)
.pipe(destBrotli)
source
.pipe(deflate)
.pipe(destDeflate)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment