# simple-progress-webpack-plugin

> A simple progress plugin for Webpack.

Latest version **2.0.0** (published 2021-04-27) · MIT license · 0 weekly downloads

## Install

```sh
npm install simple-progress-webpack-plugin
pnpm add simple-progress-webpack-plugin
yarn add simple-progress-webpack-plugin
bun add simple-progress-webpack-plugin
```

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.0.0 |
| Published | 2021-04-27 |
| First published | 2017-04-14 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 3 |
| Unpacked size | 495.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 64 |
| Maintainers | dominique-mueller |
| Keywords | webpack, plugin, progress, simple, logger |

## Links

- npm: https://www.npmjs.com/package/simple-progress-webpack-plugin
- Repository: https://github.com/dominique-mueller/simple-progress-webpack-plugin
- Homepage: https://github.com/dominique-mueller/simple-progress-webpack-plugin#readme
- Issues: https://github.com/dominique-mueller/simple-progress-webpack-plugin/issues
- npm.io page: https://npm.io/package/simple-progress-webpack-plugin

## Dependencies (3)

- [chalk](https://npm.io/package/chalk.md) 4.1.x
- [figures](https://npm.io/package/figures.md) 3.2.x
- [log-update](https://npm.io/package/log-update.md) 4.0.x

## Alternatives

- [cli-color](https://npm.io/package/cli-color.md) — 3.4M weekly downloads
- [log](https://npm.io/package/log.md) — 1.3M weekly downloads
- [logstash-client](https://npm.io/package/logstash-client.md) — 4.5K weekly downloads
- [@nocobase/plugin-logger](https://npm.io/package/@nocobase/plugin-logger.md) — 2.0K weekly downloads
- [child-process-debug](https://npm.io/package/child-process-debug.md) — 695 weekly downloads

## Recent versions

- 2.0.0 (latest) — 2021-04-27
- 1.1.2 — 2018-03-06
- 1.1.1 — 2018-02-22
- 1.1.0 — 2018-02-18
- 1.0.4 — 2017-05-09
- 1.0.3 — 2017-05-03
- 1.0.2 — 2017-04-14
- 1.0.0 — 2017-04-14

## README

<div align="center">

# simple-progress-webpack-plugin

**A simple progress plugin for [Webpack](https://webpack.js.org/), coming with four different logging output formats.**

</div>

<br><br>

## What it does

**simple-progress-webpack-plugin** is a plugin for **[Webpack](https://webpack.js.org/)**. It improves the overall Webpack Developer
Experience by showing a much more detailed and also visually appealing build progress in the command line. Four different output formats are
available, from which two are ready to be used in a CI environment (such as **[GitHub Actions](https://github.com/features/actions)**).

<br><br><br>

## How to install

You can get the **simple-progress-webpack-plugin** via **npm** by adding it as a new _dev-dependency_ to your `package.json` file and
running `npm install`. Alternatively, run the following command:

```bash
npm install simple-progress-webpack-plugin --save-dev
```

### Requirements

- **simple-progress-webpack-plugin** requires **NodeJS 12** (or higher) to be installed

<br><br><br>

## How to use

To use the plugin, import it into your Webpack configuration file and instantiate it within the list of plugins:

```js
const SimpleProgressWebpackPlugin = require('simple-progress-webpack-plugin');

const webpackConfig = {
  plugins: [new SimpleProgressWebpackPlugin()];
}
```

<br><br><br>

## How to customize

To customize the plugin, pass options to the constructor of the plugin:

```js
plugins: [
  new SimpleProgressWebpackPlugin({
    format: 'compact',
  }),
];
```

<br>

### Options

The following options exist, all of them totally optional:

| Option   | Description                                                                                         |
| -------- | --------------------------------------------------------------------------------------------------- |
| `color`  | Use colorized console output (might not be available on some CI systems)<br>→ Default value: `true` |
| `format` | Logging output format<br>→ Default value: `compact`                                                 |
| `name`   | Name of the build<br>→ Default value. `Webpack: Starting ...`                                       |

<br>

### Logging Formats

The following is a list of available logging output formats. While `compact` is the default format, `expanded` is the recommended one for
being used within a CI environment.

#### `minimal`

The `minimal` logger prints everything into a single line, constantly updated during the build. This makes it look pretty similar to what
the **[Angular CLI](https://github.com/angular/angular-cli)** outputs during build. So, if you're a minimalist, this is probably the right
logger for you!

> Probably not the best choice for your CI!

![Minimal Logger Preview GIF](/docs/minimal-logger-preview.gif?raw=true)

#### `simple`

The `simple` logger prints each build step, omitting further details. It's simply simple!

![Simple Logger Preview GIF](/docs/simple-logger-preview.gif?raw=true)

#### `compact` (default)

The `compact` logger prints each build step with further details (such as the sub-progress and several sub-steps) while still not taking up
too much space (thus the name compact).

> Probably not the best choice for your CI!

![Compact Logger Preview GIF](/docs/compact-logger-preview.gif?raw=true)

#### `expanded`

The `expanded` logger is pretty similar to the `compact` logger, but prints every sub-step into its own separate line.

![Expanded Logger Preview GIF](/docs/expanded-logger-preview.gif?raw=true)

#### `verbose`

The `verbose` logger logs everything. Like, everything! The full truth, every crucial detail Webpack has to offer. Best use it for
debugging purposes (or for finding bugs in this plugin).

![Verbose Logger Preview GIF](/docs/verbose-logger-preview.gif?raw=true)

<br><br><br>

## Similar / related projects

- **[Progress Bar Webpack Plugin](https://github.com/clessg/progress-bar-webpack-plugin)** is an alternative progress plugin for webpack.
  However, instead of just logging out colored text it uses an animated progress bar. Perfect for anyone who likes bars more than stupid text!
- **[Ghost Progress Webpack Plugin](https://github.com/ZSkycat/ghost-progress-webpack-plugin)** is a no side effects progress plugin for webpack.
  It can output progress and does not affect the output log of other tools, and is more suitable for use in a development server environment.
- **[Friendly Errors Webpack Plugin](https://github.com/geowarin/friendly-errors-webpack-plugin)** complements either this plugin or the
  _Progress Bar Webpack Plugin_ described above. It gives developer a cleaner, more detailed screen once the build has finished. Definitely
  worth checking out!

---
_Source: https://npm.io/package/simple-progress-webpack-plugin · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
