Add official Oxlint support to @fedify/lint by exposing a dedicated entrypoint that Oxlint can load directly.
Background
Right now @fedify/lint has two clear entrypoints with two different jobs. On JSR, the root export is a Deno lint plugin. On npm, the root export is the Fedify ESLint flat config, and the actual ESLint plugin object is a named export.
That split works well for Deno and ESLint. It is awkward for Oxlint. Oxlint can load ESLint-compatible JS plugins, but it expects a plugin module, not a package whose default export is already a flat config. In practice, anyone who wants to use @fedify/lint from Oxlint needs a small local wrapper module that re-exports the plugin object as the default export.
That extra file is not a serious blocker, but it is unnecessary friction. If Oxlint is going to be a supported way to run Fedify's lint rules in Node.js and Bun projects, @fedify/lint should provide a clean entrypoint for it.
Proposal
Add a dedicated entrypoint such as @fedify/lint/oxlint that exports the Fedify lint plugin in the shape Oxlint expects.
The existing root exports should stay as they are, so current Deno and ESLint users do not need to change anything.
Scope
- add an Oxlint-specific subpath export in
@fedify/lint
- document Oxlint usage in the package README
- add tests that exercise the package through Oxlint
- keep the current JSR and npm root exports unchanged
Notes
Oxlint's JS plugin support is still marked alpha upstream, so the documentation should say that plainly. Even so, this looks like a reasonable addition because @fedify/lint is already very close to working in that environment.
Add official Oxlint support to
@fedify/lintby exposing a dedicated entrypoint that Oxlint can load directly.Background
Right now
@fedify/linthas two clear entrypoints with two different jobs. On JSR, the root export is a Deno lint plugin. On npm, the root export is the Fedify ESLint flat config, and the actual ESLint plugin object is a named export.That split works well for Deno and ESLint. It is awkward for Oxlint. Oxlint can load ESLint-compatible JS plugins, but it expects a plugin module, not a package whose default export is already a flat config. In practice, anyone who wants to use
@fedify/lintfrom Oxlint needs a small local wrapper module that re-exports the plugin object as the default export.That extra file is not a serious blocker, but it is unnecessary friction. If Oxlint is going to be a supported way to run Fedify's lint rules in Node.js and Bun projects,
@fedify/lintshould provide a clean entrypoint for it.Proposal
Add a dedicated entrypoint such as
@fedify/lint/oxlintthat exports the Fedify lint plugin in the shape Oxlint expects.The existing root exports should stay as they are, so current Deno and ESLint users do not need to change anything.
Scope
@fedify/lintNotes
Oxlint's JS plugin support is still marked alpha upstream, so the documentation should say that plainly. Even so, this looks like a reasonable addition because
@fedify/lintis already very close to working in that environment.