Skip to content

An esbuild plugin which loads virtual modules from memory.

License

Notifications You must be signed in to change notification settings

manzt/esbuild-plugin-virtual

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

npm size

esbuild-plugin-virtual

💠 An esbuild plugin which loads virtual modules from memory. Inspired from @rollup/plugin-virtual.

Install

Using npm:

npm install esbuild-plugin-virtual --save-dev

Usage

// src/entry.ts
import batman from 'batman';
import { robin } from 'robin';
console.log(batman, robin);

Node

// build.js
import * as esbuild from 'esbuild';
import virtual from 'esbuild-plugin-virtual';

esbuild.build({
  entryPoints: ['src/entry.ts'],
  bundle: true,
  plugins: [
    virtual({
      batman: `export default 'na na na na na';`,
      robin: `export const robin = 'batmannnnn';`,
    }),
  ],
})
$ node build.js
# (() => {
#   // virtual:batman
#   var batman_default = "na na na na na";
#
#   // virtual:robin
#   var robin = "batmannnnn";
#
#   // entry.ts
#   console.log(batman_default, robin);
# })();

Deno

import * as esbuild from "https://deno.land/x/[email protected]/mod.js";
import virtual from "https://cdn.skypack.dev/esbuild-plugin-virtual";

await esbuild.build({
  entryPoints: ['entry.ts'],
  bundle: true,
  plugins: [
    virtual({
      batman: `export default 'na na na na na'`,
      robin: `export const robin = 'batmannnnn'`,
    }),
  ],
})

esbuild.stop()
$ deno run -A build.ts
# (() => {
#   // virtual:batman
#   var batman_default = "na na na na na";
#
#   // virtual:robin
#   var robin = "batmannnnn";
#
#   // entry.ts
#   console.log(batman_default, robin);
# })();

License

MIT

About

An esbuild plugin which loads virtual modules from memory.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published