LinuxmacOSWindows

Where Does Oxlint Read Config From?

Oxlint reads .oxlintrc.json at your project root, with per folder overrides for monorepos that need them.

Last updated

Oxlint keeps configuration in one JSON file at the project root. The default name is .oxlintrc.json, and the linter discovers it by walking up from each file it checks. No config file means the builtin rule set, which is stricter than many teams expect.

Monorepos can nest extra configs inside packages that need different rules. Editor plugins read the same root file, so terminal and IDE results match. Rule names have changed across oxc releases, so pin your expectations to the version in package.json.

Where Oxlint stores this, by platform

Linux
[ProjectDir]/.oxlintrc.json

Primary config beside package.json. Nested package folders may add their own that extend it. Keep the root file in version control.

macOS
[ProjectDir]/.oxlintrc.json

Same discovery on Mac. Editors resolve it through the open workspace. JSON with comments is accepted in recent versions.

Windows
[ProjectDir]\.oxlintrc.json

Same file on Windows. Paths inside use the project root as base. Exact supported filename variants may vary by oxc release.

Frequently asked questions

Which Oxlint config wins in a monorepo?

The nearest config to the linted file wins, walking up to the project root. Nested files only need the rules they change. Keep one root file for small repos and split only when packages genuinely differ.

Can I override Oxlint rules from the command line?

Yes for a single run. Flags beat files every time, which suits CI experiments and editor debugging. Promote anything permanent into .oxlintrc.json so the next checkout gets it too.

Notice an outdated path? Let us know.