virtual-resource-loader

Create new files inside a webpack compilation, without a file existing on disk

Usage no npm install needed!

<script type="module">
  import virtualResourceLoader from 'https://cdn.skypack.dev/virtual-resource-loader';
</script>

README

virtual-resource-loader

virtual-resource-loader allows you to create new modules inside a webpack compilation, without a file existing on disk. This is achieved in combination with webpack's matchResource feature.

Usage

// example-loader.js
export default exampleLoader() {
  const virtualModuleSourceCode = '...';

  const base64Source = Buffer.from(JSON.stringify(virtualModuleSourceCode), 'utf-8').toString(
    'base64',
  );

  const request = `./my-virtual-file!=!virtual-resource-loader?source=${base64Source}!${loader.resourcePath}`;

  return `
    import ${request};
  `;
}