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.