Files
appium/packages/oxc-config
github-actions b67de03966 chore: publish
- appium@3.7.0
 - @appium/base-driver@10.8.0
 - @appium/base-plugin@3.3.4
 - @appium/docutils@3.0.0
 - @appium/driver-test-support@3.0.0
 - @appium/eslint-config-appium-ts@3.2.5
 - @appium/execute-driver-plugin@7.0.0
 - @appium/fake-driver@6.2.3
 - @appium/fake-plugin@4.4.0
 - @appium/images-plugin@5.0.0
 - @appium/logger@2.0.11
 - @appium/opencv@5.0.0
 - @appium/oxc-config@1.1.1
 - @appium/plugin-test-support@3.0.0
 - @appium/relaxed-caps-plugin@3.0.0
 - @appium/semantic-release-config@1.2.0
 - @appium/storage-plugin@2.0.0
 - @appium/strongbox@2.0.0
 - @appium/support@7.2.7
 - @appium/tsconfig@1.2.1
 - @appium/types@1.7.0
 - @appium/universal-xml-plugin@3.0.0
2026-08-24 20:49:04 +00:00
..
2026-08-24 20:49:04 +00:00
2026-08-24 20:49:04 +00:00

@appium/oxc-config

Shared Oxlint and Oxfmt configuration for Appium and Appium-adjacent projects.

NPM version Downloads

This package pins compatible oxlint, oxlint-tsgolint, and oxfmt versions. Import lint and format settings from their respective subpaths:

  • @appium/oxc-config/oxlint
  • @appium/oxc-config/oxfmt

Usage

Install the package:

npm install @appium/oxc-config --save-dev

Oxlint

Create oxlint.config.mjs in your project root:

import appiumConfig, {defineConfig, ignorePatterns} from '@appium/oxc-config/oxlint';

export default defineConfig({
  extends: [appiumConfig],
  ignorePatterns: [...ignorePatterns],
});

Run Oxlint:

npx oxlint -c oxlint.config.mjs .

Oxfmt

Create oxfmt.config.mjs in your project root:

import appiumConfig, {defineConfig, ignorePatterns as appiumIgnorePatterns} from '@appium/oxc-config/oxfmt';

export default defineConfig({
  ...appiumConfig,
  ignorePatterns: [...appiumIgnorePatterns],
});

Run Oxfmt:

npx oxfmt -c oxfmt.config.mjs .

Notes

  • Type-aware linting: Oxlint config enables options.typeAware via the bundled oxlint-tsgolint dependency.
  • .editorconfig: Oxfmt reads .editorconfig for unset formatting options (printWidth, tabWidth, useTabs, endOfLine, insertFinalNewline). The shared Oxfmt config applies Appium fallbacks only for options not defined in the nearest .editorconfig; defined options stay unset so Oxfmt can still apply section-specific values at format time.
  • .gitignore: Oxlint and Oxfmt respect .gitignore automatically.
  • ignorePatterns: Oxlint does not inherit ignorePatterns via extends — import and spread the exported arrays in your root config.

Rules without Oxlint equivalents

Legacy rule Notes
@typescript-eslint/member-ordering Class member ordering
n/no-deprecated-api Node.js deprecated API usage
jsdoc/require-jsdoc JSDoc on exported functions
perfectionist/sort-modules Export-before-non-export module ordering
@stylistic/* Replaced by Oxfmt

License

Licensed Apache-2.0