Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

eslint-plugin-oxlint

Package Overview
Dependencies
Maintainers
0
Versions
39
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

eslint-plugin-oxlint

Turn off all rules already supported by oxlint

  • 0.15.0
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
27K
increased by14.91%
Maintainers
0
Weekly downloads
 
Created
Source

eslint-plugin-oxlint

GitHub Actions Workflow Status NPM Version NPM Downloads

Turn off all rules already supported by oxlint. The rules are extracted from here.

What is oxlint?

See https://oxc.rs/blog/2023-12-12-announcing-oxlint.html

Installation

pnpm add eslint-plugin-oxlint --D

Usage

Flat config

This plugin is optimized for flat config usage (eslint >= 9.0). See here for more details.

Example:

// eslint.config.js
import oxlint from 'eslint-plugin-oxlint';
export default [
  ...// other plugins
  oxlint.configs['flat/recommended'], // oxlint should be the last one
];

Legacy config

If you are using legacy configuration (eslint < 9.0), you can use the following config:

// .eslintrc.js
module.exports = {
  ... // other config
  extends: [
    ... // other presets
    "plugin:oxlint/recommended",
  ],
}

Detect rules from oxlint.json

If you are using flat configuration (eslint >= 9.0), you can use the following config:

// eslint.config.js
import oxlint from 'eslint-plugin-oxlint';
export default [
  ..., // other plugins
  ...oxlint.buildFromOxlintConfigFile('./oxlint.json'),
];

Or build it by an oxlint.json-like object:

// eslint.config.js
import oxlint from 'eslint-plugin-oxlint';
export default [
  ..., // other plugins
  ...oxlint.buildFromOxlintConfig({
    categories: {
      correctness: 'warn'
    },
    rules: {
      eqeqeq: 'warn'
    }
  }),
];

buildFromOxlintConfigFile is not supported for legacy configuration (eslint < 9.0).

Run it before eslint

And then you can add the following script to your package.json:

{
  "scripts": {
    "lint": "npx oxlint && npx eslint"
  }
}

All Configs

  configs: {
    // recmmended only contains the `correctness` category
    recommended: { plugins: [Array], rules: [Object] },
    'flat/recommended': { rules: [Object] },

    // all rules available
    all: { plugins: [Array], rules: [Object] },
    'flat/all': { rules: [Object] },

    // turn eslint rules off by plugin
    'flat/eslint': { rules: [Object] },
    'flat/import': { rules: [Object] },
    'flat/jest': { rules: [Object] },
    'flat/jsdoc': { rules: [Object] },
    'flat/jsx-a11y': { rules: [Object] },
    'flat/nextjs': { rules: [Object] },
    'flat/react': { rules: [Object] },
    'flat/react-perf': { rules: [Object] },
    'flat/tree-shaking': { rules: [Object] },
    'flat/typescript': { rules: [Object] },
    'flat/unicorn': { rules: [Object] },

    // turn eslint rules off by oxlint category
    'flat/pedantic': { rules: [Object] },
    'flat/style': { rules: [Object] },
    'flat/correctness': { rules: [Object] },
    'flat/restriction': { rules: [Object] },
    'flat/suspicious': { rules: [Object] }
  }

VSCode Support

You need to install both the oxc and eslint extensions

Contributing

sparse clone the oxlint repository to have a local copy

pnpm clone

generates the rules from the sparse cloned Rust library, only for the latest version, new rules that haven't been released will not be included.

pnpm generate

License

MIT

Keywords

FAQs

Package last updated on 10 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc