CtrlK
BlogDocsLog inGet started
Tessl Logo

mcollina/linting-neostandard-eslint9

Configures ESLint v9 flat config and neostandard for JavaScript and TypeScript projects, including migrating from legacy `.eslintrc*` files or the `standard` package. Use when you need to set up or fix linting with `eslint.config.js` or `eslint.config.mjs`, troubleshoot lint errors, configure neostandard rules, migrate from `.eslintrc` to flat config, or integrate linting into CI pipelines and pre-commit hooks.

96

Quality

96%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Overview
Quality
Evals
Security
Files

ci-and-editor-integration.mdrules/

name:
ci-and-editor-integration
description:
Integrate neostandard and ESLint v9 with CI pipelines, pre-commit hooks, and editors
metadata:
{"tags":"ci, linting, neostandard, eslint, pre-commit, vscode"}

CI guidance

  • Run lint in CI as a required step:
npm run lint
  • Do not use auto-fix in CI.
  • Keep CI Node.js version aligned with local development and project engines.

Pre-commit hook pattern

Use lint-staged (or equivalent) to lint only changed files before commit.

{
  "lint-staged": {
    "*.{js,mjs,cjs,ts,mts,cts}": [
      "eslint --fix"
    ]
  }
}

When using neostandard, keep pre-commit execution on eslint --fix because ESLint is the actual runner.

VS Code integration

  • Install ESLint extension
  • Enable flat config support if required by extension version
  • Use editor.codeActionsOnSave for explicit, predictable auto-fixes

Example workspace settings:

{
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": "explicit"
  },
  "eslint.validate": ["javascript", "typescript"]
}

rules

ci-and-editor-integration.md

eslint-v9-flat-config.md

migration-from-legacy-eslint.md

migration-from-standard.md

neostandard.md

SKILL.md

tile.json