Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sibiraj-s/eslint-plugin-file-progress

Eslint plugin to print file progress
https://github.com/sibiraj-s/eslint-plugin-file-progress

eslint eslint-plugin eslint-plugin-file-progress progress

Last synced: 4 days ago
JSON representation

Eslint plugin to print file progress

Awesome Lists containing this project

README

        

# eslint-plugin-file-progress

[![Version](https://badgen.net/npm/v/eslint-plugin-file-progress)](https://www.npmjs.com/package/eslint-plugin-file-progress)
[![Version](https://badgen.net/npm/license/eslint-plugin-file-progress?color=red)](https://github.com/sibiraj-s/eslint-plugin-file-progress/blob/master/LICENSE)
[![Tests](https://github.com/sibiraj-s/eslint-plugin-file-progress/workflows/Tests/badge.svg)](https://github.com/sibiraj-s/eslint-plugin-file-progress/actions)

> Eslint plugin to print file progress

## Getting Started

### Installation

```bash
npm i -D eslint-plugin-file-progress
# or
yarn add --dev eslint-plugin-file-progress
```

### Usage

```js
// eslint.config.js

{
name: 'progress',
plugins: {
progress
},
rules: {
"progress/activate": 1
},
settings: {
progress: {
hide: false, // use this to hide the progress message, can be useful in CI
hideFileName: false, // use this to hide the file name, would simply show "Linting..."
successMessage: "Lint done..."
}
}
}
```

Or use the recommended config

```js
// eslint.config.js
import progress from 'eslint-plugin-file-progress'

export default [
progress.configs.recommended
]
```

or if you want to hide the progress message in CI

```js
// eslint.config.js
import progress from 'eslint-plugin-file-progress'

export default [
progress.configs['recommended-ci']
]
```

This configuration is similar to the recommended one, but it automatically detects CI environments by checking if the `CI` environment variable is set to `true`, and hides the progress message accordingly.

For CI's where CI is not set to `true`, you can use the `settings.progress.hide` option to hide the progress message.

### Demo

Who likes a silent console ¯\\\_(ツ)\_/¯

![Progress](assets/progress.gif)

### Only on CLI

Some eslint plugins for code editors may conflict with this plugin rule (or, in that context, a file progress is not relevant)

```bash
npx eslint . --plugin file-progress --rule 'file-progress/activate: 1'
```

Or, in your package.json's command:

```diff
{
"scripts: [
- "lint": "eslint ."
+ "lint": "eslint . --plugin file-progress --rule \"file-progress/activate: 1\""
]
}
```

Use `file-progress/activate: 0` to disable the plugin. See https://eslint.org/docs/latest/user-guide/command-line-interface#specifying-rules-and-plugins for more details on how to use CLI