Registry / testing / eslint-config-iplayer

eslint-config-iplayer

JSON →
library10.0.1jsnpmunverified

ESLint configuration for BBC iPlayer projects. Version 10.0.1 requires ESLint 9 and uses FlatConfig (eslint.config.js) instead of the legacy .eslintrc format. Provides presets: base, js, jsx, ts, tsx, legacy. Peer dependencies include eslint >=9.0.0 and typescript >=4.0.0. Breaking change from v9 to v10: switch to FlatConfig; old package.json extends no longer work. Release cadence follows BBC iPlayer needs.

npm install eslint-config-iplayer
INSTALL
IMPORT
SIG · ESLINT-CONFIG-IPLA
E
eslint-config-iplayer
testingjavascriptv10.0.1
Install
Import
Disk
Pass rate
0/ 6
Env Coverage0 / 6
glibc
1822
musl
1822
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.

flat config with compat
const compat = new (require('@eslint/eslintrc').FlatCompat)({ baseDirectory: __dirname }); module.exports = [ { ignores: ['node_modules'] }, ...compat.extends('eslint-config-iplayer/tsx') ];
module.exports = { extends: 'iplayer/tsx' }
v10 uses ESLint 9 FlatConfig; require('@eslint/eslintrc').FlatCompat is needed to extend. Old object format breaks.
import in ESM
import { FlatCompat } from '@eslint/eslintrc'; const compat = new FlatCompat({ baseDirectory: import.meta.url });
import config from 'eslint-config-iplayer'
Package is not ESM; use FlatCompat with import.meta.url in ESM projects.
presets js/jsx/ts/tsx/base/legacy
compat.extends('eslint-config-iplayer/tsx')
compat.extends('iplayer')
scoped extends require full package name.

Shows how to set up ESLint 9 FlatConfig with eslint-config-iplayer v10 using FlatCompat for TypeScript+JSX.

// Install npm install --save-dev eslint eslint-config-iplayer @eslint/eslintrc // eslint.config.js const { FlatCompat } = require('@eslint/eslintrc'); const path = require('path'); const compat = new FlatCompat({ baseDirectory: __dirname }); module.exports = [ { ignores: ['node_modules', 'dist'] }, ...compat.extends('eslint-config-iplayer/tsx') ];
Debug
Known issues
breakingVersion 10 drops support for .eslintrc files and package.json eslintConfig. Must use eslint.config.js with FlatCompat.
fix
Switch to FlatConfig as shown in quickstart.
affects: >=10.0.0
deprecatedLegacy extends 'iplayer/base' etc. from .eslintrc are deprecated. Use FlatCompat instead.
fix
Use eslint.config.js with FlatCompat.extends('eslint-config-iplayer/base').
affects: >=10.0.0
gotchaFull package name required in compat.extends: e.g., 'eslint-config-iplayer/tsx' not 'iplayer/tsx'.
fix
Always prefix with 'eslint-config-iplayer/'.
affects: >=10.0.0
Errors
Common errors & fixes
Configuration for rule "no-console" is invalid
FlatConfig does not accept legacy rule config format (e.g., array).
fix
Use object format for rule options. Check each rule's schema.
Cannot find module 'eslint-config-iplayer'
Missing peer dependency or wrong extends name without full package name.
fix
Ensure eslint-config-iplayer is installed and use full name in FlatCompat.extends.
Upgrade
Version history
10.0.1latest on npm
Audit
Dependencies
eslintrequiredpeer dependency for linting
typescriptoptionalpeer dependency for TypeScript rules
Agent activity
4 hits · last 30 days
node
4
Resources
eslint-config-iplayer — npm install eslint-config-iplayer · libregistry