ESLint Migration Guides

What to do when eslint.config.* already exists

If the repo already has eslint.config.js, .cjs, or .mjs, the static legacy-config migration path should stop for manual review.

Start here

The safe first move

Treat existing eslint.config.* files as manual review. The next step depends on whether the flat config is authoritative, partial, or mid-migration.

Stop before automation when: Deciding whether the existing flat config is authoritative. Cleaning up mixed legacy and flat-config states.

Target shape

# manual review required
# repo already has a flat config file

Repo fit check

Want to know if your repo has this pattern?

Run the matching scanner locally first. The fit-report add-on is not listed for this proof-only product yet, so use the proof page and scanner output before treating it as a purchase candidate.

  • Local scan; no repository upload.
  • Supported findings are separated from manual-review findings.
  • Buy only when the repeated pattern is worth automating.
Run the static-config scan View example report See when to buy
Example scan summary
supported_findings: 38
manual_review_findings: 6
files_uploaded: 0
confidence: reviewable

Why this page exists

What to do when eslint.config.* already exists

If the repo already has a flat config file, you are not starting from the simple bridge case anymore.

Direct answer

What changes

Treat existing eslint.config.* files as manual review. The next step depends on whether the flat config is authoritative, partial, or mid-migration.

Example

Before and after

Before

eslint.config.cjs
.eslintrc.json

After

# manual review required
# repo already has a flat config file

Decision path

If this repeats across the repo, open the evaluation pages next.

This product exists for the static-config subset. It does not pretend to evaluate JS config logic.

  • Teams migrating static .eslintrc JSON or YAML configs.
  • Repos that still store eslintConfig inside package.json.
  • The fit-report add-on is not listed for this proof-only product yet; use the proof page and scanner output before treating this as purchasable.

Before checkout

Product fit, proof, and price should all be one click away.

Current listed price is not published on the pricing page yet.

Typical symptoms

  • The repo already contains eslint.config.js, .cjs, or .mjs.
  • The flat-config pack needs to stop before generating duplicate or conflicting output.
  • Teams want fast repo qualification instead of accidental config churn.

What the product covers

  • Explicit existing-flat-config findings.
  • Cross-links to the supported static legacy-config pages.
  • Repo-fit guidance before buying the flat-config pack.

Manual-review boundary

  • Deciding whether the existing flat config is authoritative.
  • Cleaning up mixed legacy and flat-config states.
  • Repos that also have JS-backed legacy configs.

FAQ

Fast answers before you decide

What is the safest fix for existing eslint.config flat config migration?

Treat existing eslint.config.* files as manual review. The next step depends on whether the flat config is authoritative, partial, or mid-migration.

Can existing eslint.config flat config migration be automated?

Automate only the supported subset: Explicit existing-flat-config findings. Cross-links to the supported static legacy-config pages. Repo-fit guidance before buying the flat-config pack. Keep these cases in manual review: Deciding whether the existing flat config is authoritative. Cleaning up mixed legacy and flat-config states. Repos that also have JS-backed legacy configs.

When should I buy ESLint Flat Config Migration Cleanup Pack?

Use ESLint Flat Config Migration Cleanup Pack only when this pattern repeats across enough files that manual cleanup is still costly. Run the public scan or read the proof first. The fit-report add-on is not listed for this proof-only product yet; if unsupported findings dominate, keep the work manual.