mirror of
https://github.com/robonen/tools.git
synced 2026-03-20 10:54:44 +00:00
1.8 KiB
1.8 KiB
@robonen/oxlint
Composable oxlint configuration presets.
Install
pnpm install -D @robonen/oxlint oxlint
Usage
Create oxlint.config.ts in your project root:
import { defineConfig } from 'oxlint';
import { compose, base, typescript, vue, vitest, imports } from '@robonen/oxlint';
export default defineConfig(
compose(base, typescript, vue, vitest, imports),
);
Append custom rules after presets to override them:
compose(base, typescript, {
rules: { 'eslint/no-console': 'off' },
ignorePatterns: ['dist'],
});
Presets
| Preset | Description |
|---|---|
base |
Core eslint, oxc, unicorn rules |
typescript |
TypeScript-specific rules (via overrides) |
vue |
Vue 3 Composition API / <script setup> rules |
vitest |
Test file rules (via overrides) |
imports |
Import rules (cycles, duplicates, ordering) |
node |
Node.js-specific rules |
Rules Documentation
Подробные описания правил и good/bad примеры вынесены в отдельную директорию:
rules/README.mdrules/base.mdrules/typescript.mdrules/vue.mdrules/vitest.mdrules/imports.mdrules/node.mdrules/stylistic.md
API
compose(...configs: OxlintConfig[]): OxlintConfig
Merges multiple configs into one:
- plugins — union (deduplicated)
- rules / categories — last wins
- overrides / ignorePatterns — concatenated
- env / globals — shallow merge
- settings — deep merge