@lectro/enhancer-buildutils

Add more methods to Lectro build system

Stats

StarsIssuesVersionUpdatedCreatedSize
@lectro/enhancer-buildutils
0.1.0-alpha-83 years ago4 years agoMinified + gzip package size for @lectro/enhancer-buildutils in KB

Readme

Lectro Enhancer Buildutils

Adds Extra Methods to Lectro Build system

  • tap

Allows you Tap into the webpack config and mutate the config, consider it as mutable extend

  • runThenBuild

Allows you to run a function before build begins and then starts the build. To run a promise use async/await.

lectro
  .use(EnhancerBuildutils)
  .runThenBuild(_ => console.log('Starting build, Hold on tight!'))
  .build();

// OR

lectro
  .use(EnhancerBuildutils)
  .runThenBuild(async _ => await copyfiles())
  .build();
  • buildThenRun

Allows you to run a function after build is completed.

lectro
  .use(EnhancerBuildutils)
  .buildThenRun(_ => console.log('Build Completed!'))
  .build();
  • setEntry

Allows you to override lectro's default entry ie. src/index.js, accept webpack compatible entry,

lectro
  .use(EnhancerBuildutils)
  .setEntry('./path/to/my/entry/file.js')
  .build();

// OR

lectro
  .use(EnhancerBuildutils)
  .setEntry({
    main: './path/to/my/entry/file.js',
  })
  .build();

// OR

lectro
  .use(EnhancerBuildutils)
  .setEntry({
    entry: {
      main: ['./path/to/my/entry/file1.js', './path/to/my/entry/file2.js'],
    },
  })
  .build();
  • setOutputPath

Allows you to override lectro's default output path ie. build. eg.

lectro.use(EnhancerBuildutils).setOutputPath('dist');
  • addProgressBar

Adds a nice progressbar that shows whenever your build occurs eg.

lectro.use(EnhancerBuildutils).addProgressBar({
  name: 'AwesomePackage',
  color: 'orange' /* or red or yellow or blue or green, green by default*/,
});

Usage

  • Install the module yarn add @lectro/enhancer-buildutils
const Lectro = require('@lectro/core');
const EnhancerBuildutils = require('@lectro/enhancer-buildutils');

const lectro = new Lectro('node');

lectro
  .use(EnhancerBuildutils)
  .tap(console.log)
  .runThenBuild(_ => console.log('Now Building'));

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.