eslint-config-cesium
raw JSON → 11.0.1 verified Fri May 01 auth: no javascript
Official ESLint shareable configs for Cesium ecosystem. Version 11.0.1 requires ESLint 9.x and uses flat config format exclusively. Published monthly, maintained by Cesium team. Exports three configs: 'recommended' (base rules extending @eslint/js and eslint-config-prettier), 'browser' (browser globals), and 'node' (extends plugin:n/recommended). Key differentiator: Cesium-specific rules tailored for geospatial JavaScript in browser and Node.js environments. Active development with regular updates aligned with Cesium releases, supporting ESLint 9 flat config only.
Common errors
error Error [ERR_REQUIRE_ESM]: require() of ES Module /path/node_modules/eslint-config-cesium/index.js from /path/.eslintrc.js not supported. ↓
cause Attempting to use CommonJS require() on an ESM-only flat config package.
fix
Use import syntax and rename .eslintrc.js to eslint.config.js (flat config). If must use require, downgrade to eslint-config-cesium@^10.0.0.
error Error: Failed to load config 'eslint-config-cesium' to extend from. ↓
cause Missing peer dependency (e.g., eslint-config-prettier not installed or mismatched version).
fix
Ensure all peer dependencies are installed: npm install eslint@^9.0.0 @eslint/js@^9.0.0 eslint-config-prettier@^9.0.0 eslint-plugin-n@^17.0.0 globals@^15.0.0 --save-dev
error TypeError: Cannot read properties of undefined (reading 'recommended') ↓
cause Trying to access configCesium.configs but configCesium is undefined due to incorrect import.
fix
Check import: use 'import configCesium from "eslint-config-cesium"' not destructured import.
error Error: .eslintrc.js is not a valid ESLint configuration file. You may need to rename it to eslint.config.js. ↓
cause ESLint v9 no longer supports .eslintrc files; you must use eslint.config.js.
fix
Rename .eslintrc.* to eslint.config.js and rewrite config in flat config format.
Warnings
breaking Version 11 drops support for legacy eslintrc format (v9 flat config only). Previous versions used .eslintrc. ↓
fix Migrate to flat config; remove .eslintrc files. See ESLint v9 migration guide.
breaking Peer dependencies changed in v11: requires eslint ^9.0.0, @eslint/js ^9.0.0, eslint-config-prettier ^9.0.0, eslint-plugin-n ^17.0.0, globals ^15.0.0. ↓
fix Update all peer deps to specified versions. npm install --save-dev eslint@^9.0.0 ...
gotcha Configs are accessed as properties of the default export, not as named exports. import { configs } will be undefined. ↓
fix Use import configCesium from 'eslint-config-cesium'; then configCesium.configs.recommended.
gotcha Do not forget to install peer dependencies; they are not installed automatically by npm in v7+ unless using --legacy-peer-deps. ↓
fix Run npm install with --legacy-peer-deps or manually install peer dependencies as devDependencies.
Install
npm install eslint-config-cesium yarn add eslint-config-cesium pnpm add eslint-config-cesium Imports
- configCesium wrong
const configCesium = require('eslint-config-cesium')correctimport configCesium from 'eslint-config-cesium' - configCesium.configs.recommended wrong
import { configs } from 'eslint-config-cesium'correctimport configCesium from 'eslint-config-cesium'; configCesium.configs.recommended - configCesium.configs.browser
import configCesium from 'eslint-config-cesium'; configCesium.configs.browser - configCesium.configs.node
import configCesium from 'eslint-config-cesium'; configCesium.configs.node
Quickstart
// Install peer dependencies first
npm install --save-dev eslint @eslint/js eslint-config-prettier eslint-plugin-n globals
// Install eslint-config-cesium
npm install --save-dev eslint-config-cesium
// eslint.config.js
import configCesium from 'eslint-config-cesium';
export default [
configCesium.configs.recommended,
{
rules: {
'no-console': 'warn',
},
},
];