1.1.0 • Published 3 years ago

symlink-webpack-plugin v1.1.0

Weekly downloads
1,609
License
MIT
Repository
github
Last release
3 years ago

Symlink Webpack Plugin

npm.io GitHub Workflow Status

A webpack plugin to make symbolic links for emitted file.

Installation

npm i -D symlink-webpack-plugin

Usage

In your webpack config:

const SymlinkWebpackPlugin = require('symlink-webpack-plugin');

module.exports = {
  // ...etc
  plugins: [
    new SymlinkWebpackPlugin({ origin: 'index.html', symlink: '200.html' })
  ]
};

This setting makes symbolic link file [ouput_path]/200.html to [ouput_path]/index.html.

You can give configurations as Array

const SymlinkWebpackPlugin = require('symlink-webpack-plugin');

module.exports = {
  // ...etc
  plugins: [
    new SymlinkWebpackPlugin([
      { origin: 'index.html', symlink: '200.html' },
      { origin: 'index.html', symlink: 'error_pages/404.html' },
    ])
  ]
};

force option (default: false)

const SymlinkWebpackPlugin = require('symlink-webpack-plugin');

module.exports = {
  // ...etc
  plugins: [
    new SymlinkWebpackPlugin([
      { origin: 'index.html', symlink: '200.html', force: true },
      { origin: 'index.html', symlink: '404.html' },
    ])
  ]
};

The plugin doesn't make any symlink if a directory for a destination doesn't exist as default. Passing an option force: true, will create it regardless.

When directories of symlink don't exist, force option allows to dig. For instance, what if a config has symlink: 'one/two/200.html' but one/two/ dir doesn't exist when the plugin runs, one, one/two directories will be created.

hook option (default: afterEmit)

You can point an exact compiler hook to make a symlink.

  { origin: 'index.html', symlink: '200.html', hook: 'entryOption' },

Development

yarn
yarn test

License

MIT

1.1.0

3 years ago

1.1.0-beta.2

3 years ago

1.1.0-beta.1

3 years ago

1.0.0

4 years ago

0.2.0

5 years ago

0.1.0

5 years ago

0.0.4

6 years ago

0.0.3

7 years ago

0.0.2

7 years ago

0.0.1

7 years ago