Getting Started

June 18, 2026 ยท View on GitHub

Install the plugin:

npm install --save-dev eslint-plugin-file-progress-2

Quick start with Flat Config

import progress from "eslint-plugin-file-progress-2";

export default [progress.configs.recommended];

Configure a rule directly

import progress from "eslint-plugin-file-progress-2";

export default [
 {
  plugins: {
   "file-progress": progress,
  },
  rules: {
   "file-progress/activate": [
    "warn",
    {
     outputStream: "stderr",
     throttleMs: 100,
     ttyOnly: true,
    },
   ],
  },
 },
];

For a full option-by-option reference, default values, and deprecated fallback notes, read activate.

Preset choices

Rule choices

If you are not using one of the built-in presets, configure the single public rule with the mode you want:

Migration from older configs

The old file-progress/compact and file-progress/summary-only rule IDs were removed.

Use file-progress/activate with mode instead:

rules: {
  "file-progress/activate": ["warn", { mode: "compact" }],
}
rules: {
  "file-progress/activate": ["warn", { mode: "summary-only" }],
}

The recommended-compact and recommended-summary-only presets still exist and now map to those mode values automatically.

Deprecated settings fallback

settings.progress still works, but it is deprecated.

Prefer rule options whenever you change runtime behavior, especially for:

  • ttyOnly
  • throttleMs
  • minFilesBeforeShow
  • showSummaryWhenHidden
  • pathFormat
  • outputStream

CLI-only usage

If you do not want editor integrations to see these runtime rules, keep the plugin out of your shared config and enable it only from the CLI:

npx eslint . --plugin file-progress --rule 'file-progress/activate: warn'

Next step

Read the preset guide or jump to activate.