Skip to content

52-entertainment/vite-plugin-oxlint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚓️+⚡️Vite Plugin Oxlint

This is a Vite plugin for integrating the Oxlint linter into your Vite project. This plugin is an adaptation of the vite-plugin-biome for oxlint.

Installation

npm install vite-plugin-oxlint oxlint

Usage

Add the plugin to your vite.config.js file.

import oxlintPlugin from 'vite-plugin-oxlint'

export default {
  plugins: [oxlintPlugin()],
}

Advanced Usage

Change working directory

You can change the directory where oxlinter will run. Default to the root of your project.

Examples: only lint files in yout src directory.

import oxlintPlugin from 'vite-plugin-oxlint'

export default {
  plugins: [
    oxlintPlugin({
      path: 'src',
    }),
  ],
}

Allow / Deny rules

You can allow or deny oxlinter rules or categories. To see the list of available rules and categories, run: npx oxlint --rules

Default to deny: correctness.

Example: deny (turn on) correctness and perf rules and allow (turn off) the debugger and eqeqeq rule.

import oxlintPlugin from 'vite-plugin-oxlint'

export default {
  plugins: [
    oxlintPlugin({
      deny: ['correctness', 'perf'],
      allow: ['debugger', 'eqeqeq'],
    }),
  ],
}

Additional oxlint config:

You can pass any additional oxlint config as a string. See oxlint options for a list of available options.

Example: add the --deny-warnings and --quiet option to the vite-plugin-oxlint config:

import oxlintPlugin from 'vite-plugin-oxlint'

export default {
  plugins: [
    oxlintPlugin({
      params: '--deny-warnings --quiet',
    }),
  ],
}

Integration with ESlint

If your project still needs ESlint, you can use vite-plugin-eslint and configure ESlint with eslint-plugin-oxlint to turn off rules already supported in oxlint

import oxlintPlugin from 'vite-plugin-oxlint'
import eslintPlugin from 'vite-plugin-eslint'

export default {
  plugins: [oxlintPlugin(), eslintPlugin()],
}

License

MIT LICENSE

GitHub