/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
Claude Code
$ npx -y skills add mcollina/skills --skill linting-neostandard-eslint9 --agent claude-code
Codex
$ npx skills add mcollina/skills --skill linting-neostandard-eslint9 -a codex -y
Cursor
$ npx skills add mcollina/skills --skill linting-neostandard-eslint9 -a cursor -y
Gemini CLI
$ npx skills add mcollina/skills --skill linting-neostandard-eslint9 -a gemini-cli -y
GitHub Copilot
$ npx skills add mcollina/skills --skill linting-neostandard-eslint9 -a github-copilot -y
OpenCode
$ npx skills add mcollina/skills --skill linting-neostandard-eslint9 -a opencode -y
Windsurf
$ npx skills add mcollina/skills --skill linting-neostandard-eslint9 -a windsurf -y
SKILL.md
linting-neostandard-eslint9.SKILL.mdname: linting-neostandard-eslint9
description: 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.
metadata:
tags: linting, neostandard, eslint, eslint9, flat-config, javascript, typescript
When to use
Use this skill when you need to:
- Set up linting in a JavaScript or TypeScript project
- Use `neostandard` as a Standard-like ESLint v9 flat-config baseline
- Configure `eslint@9` with the flat config system (`eslint.config.js`/`eslint.config.mjs`)
- Migrate from `standard` to `neostandard` or ESLint v9
- Migrate from legacy `.eslintrc*` configuration to ESLint v9
- Run linting consistently in CI and local development
Quick start: basic neostandard setup
Install dependencies and create a minimal `eslint.config.js`:
npm install --save-dev eslint@9 neostandard
// eslint.config.js
import neostandard from 'neostandard'
export default neostandard()
Verify the config works:
npx eslint .
Common setup workflow (new project)
1. Install `eslint@9` and `neostandard` (see Quick start above) 2. Create `eslint.config.js` with `neostandard()` as the base 3. Add any project-specific rule overrides on top 4. Run `npx eslint .` to confirm no config errors 5. Add a lint script to `package.json`: `"lint": "eslint ."` 6. Integrate into CI with a non-fix run; use `--fix` only in local workflows
How to use
Read individual rule files for implementation details and examples:
- [rules/neostandard.md](rules/neostandard.md) - Install, configure, and extend neostandard with ESLint
- [rules/eslint-v9-flat-config.md](rules/eslint-v9-flat-config.md) - Build ESLint v9 flat config for JS/TS projects
- [rules/migration-from-standard.md](rules/migration-from-standard.md) - Migrate from `standard` to `neostandard` or ESLint v9
- [rules/migration-from-legacy-eslint.md](rules/migration-from-legacy-eslint.md) - Migrate from `.eslintrc*` to flat config safely
- [rules/ci-and-editor-integration.md](rules/ci-and-editor-integration.md) - CI scripts, pre-commit, and editor setup
Core principles
- Prefer reproducible linting with pinned major versions
- Keep config minimal and explicit
- Use flat config for ESLint v9 projects
- Treat lint failures as quality gates in CI
- Enable auto-fix for local workflows, but validate with non-fix CI runs
Read more
name: linting-neostandard-eslint9 description: 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. metadata: tags: linting, neostandard, eslint, eslint9, flat-config, javascript, typescript
When to use
Use this skill when you need to:
- Set up linting in a JavaScript or TypeScript project
- Use `neostandard` as a Standard-like ESLint v9 flat-config baseline
- Configure `eslint@9` with the flat config system (`eslint.config.js`/`eslint.config.mjs`)
- Migrate from `standard` to `neostandard` or ESLint v9
- Migrate from legacy `.eslintrc*` configuration to ESLint v9
- Run linting consistently in CI and local development
Quick start: basic neostandard setup
Install dependencies and create a minimal `eslint.config.js`:
npm install --save-dev eslint@9 neostandard
// eslint.config.js import neostandard from 'neostandard' export default neostandard()
Verify the config works:
npx eslint .
Common setup workflow (new project)
1. Install `eslint@9` and `neostandard` (see Quick start above) 2. Create `eslint.config.js` with `neostandard()` as the base 3. Add any project-specific rule overrides on top 4. Run `npx eslint .` to confirm no config errors 5. Add a lint script to `package.json`: `"lint": "eslint ."` 6. Integrate into CI with a non-fix run; use `--fix` only in local workflows
How to use
Read individual rule files for implementation details and examples:
- [rules/neostandard.md](rules/neostandard.md) - Install, configure, and extend neostandard with ESLint
- [rules/eslint-v9-flat-config.md](rules/eslint-v9-flat-config.md) - Build ESLint v9 flat config for JS/TS projects
- [rules/migration-from-standard.md](rules/migration-from-standard.md) - Migrate from `standard` to `neostandard` or ESLint v9
- [rules/migration-from-legacy-eslint.md](rules/migration-from-legacy-eslint.md) - Migrate from `.eslintrc*` to flat config safely
- [rules/ci-and-editor-integration.md](rules/ci-and-editor-integration.md) - CI scripts, pre-commit, and editor setup
Core principles
- Prefer reproducible linting with pinned major versions
- Keep config minimal and explicit
- Use flat config for ESLint v9 projects
- Treat lint failures as quality gates in CI
- Enable auto-fix for local workflows, but validate with non-fix CI runs
Other skills on skills.
More skills from other plugins.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
ask-matt
Ask which skill or flow fits your situation. A router over the skills in this repo.
Questions about linting-neostandard-eslint9.
- Which coding agents can use linting-neostandard-eslint9?
- linting-neostandard-eslint9 installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

