ESLint v9 introduced the flat config format, but using it with EcmaScript modules (.mjs files) in an NX workspace has a caveat: the NX linter doesn't recognize the .mjs extension. A practical workaround is to use a CommonJS bridge file (eslint.config.cjs) that loads and re-exports the flat config from the .mjs file. The post documents this approach based on lessons learned migrating Angular Testing Library to ESLint v9 flat config in an NX monorepo.

2m read timeFrom timdeschryver.dev
Post cover image