Registry / testing / eslint-remote-tester

eslint-remote-tester

JSON →
library4.0.4jsnpmunverified

CLI tool for running ESLint rules against multiple remote repositories simultaneously. Current stable version is 4.0.4, released on an irregular cadence. Key differentiators: designed for regression testing of new or modified ESLint rules across many real-world codebases; integrates with CI via GitHub Actions; supports both flat config (eslint@9) and legacy config; ESM-only since v4. Unlike local linting tools, it clones and lints repositories from GitHub to catch false positives, crashes, and unexpected behavior before a rule is published. Requires peer dependencies eslint@>=9, importx@>=0.3.5, jiti@>=1.

testingdevops
Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
node 18226 runs
build_error
glibc
node 18226 runs
build_error
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Config is a type, not a value. Use type-only import. Available since v4.

import type { Config } from 'eslint-remote-tester'

Package is ESM-only since v4. CommonJS require() will throw ERR_REQUIRE_ESM.

import eslintRemoteTester from 'eslint-remote-tester'

runProgrammatically is a named export, not the default. Use destructured import.

import { runProgrammatically } from 'eslint-remote-tester'

Shows creation of a configuration file with flat config (ESM), listing remote repos, extensions, and ignore patterns. Run via npx.

// Install: npm install --save-dev eslint-remote-tester eslint // Create eslint-remote-tester.config.js (ESM) import js from '@eslint/js'; /** @type {import('eslint-remote-tester').Config} */ const config = { repositories: ['mui-org/material-ui', 'reach/reach-ui'], extensions: ['js', 'jsx', 'ts', 'tsx'], eslintConfig: [js.configs.recommended], pathIgnorePattern: `(${[ 'node_modules', '\\/\\.', 'test-results', 'docs', ].join('|')})`, }; export default config; // Run CLI: // npx eslint-remote-tester
eslint-remote-tester --version
Debug
Known footguns
breakingPackage converted to ESM-only in v4.0.0. CommonJS require() will fail.
breakingDropped support for eslint@<9 in v4.0.0. eslint@9 with FlatConfig is required.
breakingThe eslintConfig option changed from a single config object to an array in v4.0.4.
deprecatedTypeScript config loading via jiti@^1 is deprecated; jiti@^2 or importx@>=0.3.5 recommended.
gotchaThe underlying git integration requires git CLI to be installed and callable as 'git'.
gotchaLoading config on Windows could fail before v4.0.1.
Upgrade
Version history

Breaking-change detection hasn't run for this library yet.

Audit
Security & dependencies

CVE tracking and dependency tree are planned for a later release.

Agent activity
9 hits · last 30 days
gptbot
4
ahrefsbot
4
script
1
Resources