Registry / testing / eslint-config-skyux

eslint-config-skyux

JSON →
library14.2.2jsnpmunverified

Recommended ESLint configuration for SKY UX projects. Current stable version is 14.2.2, released April 2026 with frequent patch releases. This package provides a shared eslint.config extending from typescript-eslint, angular-eslint, and @eslint/js. It includes SKY UX-specific lint rules (e.g., no-sky-selectors) and stylelint integration. Key differentiators: it is the only config tailored to the SKY UX component library, automatically setting up recommended rules for Angular + TypeScript + SKY UX conventions. Requires Angular 19+, angular-eslint 21, and typescript-eslint 8.

npm install eslint-config-skyux
INSTALL
IMPORT
SIG · ESLINT-CONFIG-SKYU
E
eslint-config-skyux
testingjavascriptv14.2.2
Install
—
Import
—
Disk
—
Pass rate
0/ 6
Env Coverage0 / 6
glibc
18–22
musl
18–22
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 18–226 runs
build_error
glibc
node 18–226 runs
build_error
Code
Verified usage

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

default export
✓ import skyux from 'eslint-config-skyux';
✗ const skyux = require('eslint-config-skyux');
This package is ESM-only. In ESLint flat config, import as default.
typescript-eslint helper
✓ import tseslint from 'typescript-eslint';
✗ import { TSLint } from 'typescript-eslint';
tseslint is the default export of typescript-eslint.
tseslint.config
✓ export default tseslint.config(...skyux, { ... });
✗ export default [...skyux, { ... }];
Must use tseslint.config() to properly merge configs. Since v14.

Minimal eslint.config.mjs setup for a SKY UX Angular project using flat config and typescript-eslint.

// eslint.config.mjs import skyux from 'eslint-config-skyux'; import tseslint from 'typescript-eslint'; export default tseslint.config( ...skyux, { languageOptions: { parserOptions: { projectService: true, tsconfigRootDir: import.meta.dirname, }, }, }, { files: ['**/*.ts'], rules: { '@angular-eslint/directive-selector': [ 'error', { type: 'attribute', prefix: 'app', style: 'camelCase', }, ], '@angular-eslint/component-selector': [ 'error', { type: 'element', prefix: 'app', style: 'kebab-case', }, ], }, }, );
Debug
Known issues
breakingMigrated from legacy eslintrc to flat config (eslint.config.*). Requires ESLint >=9 and removal of .eslintrc files.
fix
Delete .eslintrc.* files and create eslint.config.mjs using the pattern shown in README.
affects: >=14.0.0
breakingRequires projectService: true in parserOptions for typed lint rules to work correctly (since v14).
fix
Set parserOptions.projectService: true in your config.
affects: >=14.0.0
deprecatedSupport for Angular <19 dropped in v14; Angular 19+ required.
fix
Upgrade to Angular 19 or later.
affects: >=14.0.0
gotchaMust use ...skyux spread inside tseslint.config(), not directly in an array. Flat configs from different plugins may conflict.
fix
Use tseslint.config(...skyux, ...). Do not manually merge config arrays.
affects: >=14.0.0
breakingDropped support for Node <18.19 (required for ESLint flat config).
fix
Update Node.js to >=18.19 (recommended 22 LTS).
affects: >=14.0.0
Errors
Common errors & fixes
Error [ERR_REQUIRE_ESM]: require() of ES Module /node_modules/eslint-config-skyux/index.js not supported.
Using CommonJS require() to import an ESM-only package.
fix
Convert your eslint config to an .mjs file and use import instead of require().
Configuration for rule '@angular-eslint/directive-selector' is invalid. Expected an array of objects, got string.
Incorrect format for rule configuration (common when migrating from eslintrc).
fix
Use array syntax: ['error', { type: 'attribute', prefix: 'app', style: 'camelCase' }]
TypeError: skyux is not iterable
Forgetting to spread the skyux config inside tseslint.config() (e.g., using skyux directly without ...).
fix
Use tseslint.config(...skyux, ...otherConfigs)
ESLint: Error while loading rule 'skyux-eslint/no-sky-selectors': Rule 'no-sky-selectors' is not defined.
Missing skyux-eslint package in dependencies.
fix
Run 'ng add eslint-config-skyux' or install 'skyux-eslint' as a dev dependency.
Upgrade
Version history
14.2.2latest on npm
Audit
Dependencies
@eslint/jsrequiredBase ESLint recommended rules
angular-eslintrequiredAngular-specific lint rules
skyux-eslintrequiredSKY UX custom lint rules
typescript-eslintrequiredTypeScript lint rules and config builder
Agent activity
6 hits · last 30 days
node
6
Resources
eslint-config-skyux — npm install eslint-config-skyux · libregistry