esbuild-plugin-cache
TypeScript icon, indicating that this package has built-in type declarations

0.2.10 • Public • Published

esbuild-plugin-cache

Esbuid plugin to cache http/https imports.

The plugin allows to use http/https imports without installing npm packages on node_modules.

It also allows to use import-maps .

It can provide a feature similar to Snowpack 3.0, the new Streaming NPM Imports, which allows to skip the NPM install and node_modules.

//index.js
import React from 'https://cdn.skypack.dev/react@17.0.1'
console.log(React.version)

Build script:

//build.js
import esbuild from 'esbuild'
import { cache } from 'esbuild-plugin-cache'

esbuild
  .build({
    entryPoints: ['index.js'],
    bundle: true,
    outfile: 'bundle.js',
    plugins: [cache()],
  })
  .catch(() => process.exit(1))

Config:

config: {importmap: {imports:{[key: string]: string}}, directory: string}

  • importmap: Import-map object. Default: {}

  • directory: Path or name for the directory of the cache. Default to Deno cache directory. Optionally the cache directory can be defined with DENO_DIR env variable: process.env.DENO_DIR = 'cache'.

Using with importmap

//index.js
import React from 'react'
console.log(React.version)
//build.js
import esbuild from 'esbuild'
import { cache } from 'esbuild-plugin-cache'

const importmap = {
  imports: {
    react: 'https://cdn.skypack.dev/react@17.0.1',
  },
}

esbuild
  .build({
    entryPoints: ['index.js'],
    bundle: true,
    outfile: 'bundle.js',
    plugins: [cache({ importmap, directory: './cache' })],
  })
  .catch(() => process.exit(1))

Readme

Keywords

Package Sidebar

Install

npm i esbuild-plugin-cache

Weekly Downloads

1,432

Version

0.2.10

License

MIT

Unpacked Size

453 kB

Total Files

28

Last publish

Collaborators

  • dalcib