{"id":19698,"library":"eslint-plugin-baseui","title":"eslint-plugin-baseui","description":"ESLint plugin providing lint rules for Base Web (Uber's React component library). Current stable version is 13.0.0. Release cadence is irregular, tied to Base Web releases. Key differentiator: enforces best practices specific to Base Web, such as correct import paths, proper use of theme and overrides, and deprecation warnings. Requires ESLint 3-8.","status":"active","version":"13.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/uber/baseweb","tags":["javascript","eslint","eslint-plugin","eslintplugin","react","baseui"],"install":[{"cmd":"npm install eslint-plugin-baseui","lang":"bash","label":"npm"},{"cmd":"yarn add eslint-plugin-baseui","lang":"bash","label":"yarn"},{"cmd":"pnpm add eslint-plugin-baseui","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"peer dependency, required as the host for the plugin","package":"eslint","optional":true}],"imports":[{"note":"ESM default import; CommonJS require also works but is not recommended.","wrong":"const plugin = require('eslint-plugin-baseui')","symbol":"plugin","correct":"import plugin from 'eslint-plugin-baseui'"},{"note":"Named export for accessing individual rule definitions.","wrong":"","symbol":"rules","correct":"import { rules } from 'eslint-plugin-baseui'"},{"note":"Named export for recommended configurations.","wrong":"const configs = require('eslint-plugin-baseui').configs","symbol":"configs","correct":"import { configs } from 'eslint-plugin-baseui'"}],"quickstart":{"code":"// .eslintrc.json\n{\n  \"plugins\": [\"baseui\"],\n  \"rules\": {\n    \"baseui/deprecated-theme-api\": \"error\",\n    \"baseui/no-deep-imports\": \"error\",\n    \"baseui/no-override-extend\": \"warn\"\n  }\n}","lang":"javascript","description":"Configure ESLint to use baseui plugin with recommended rules for deprecated theme API, deep imports, and override extend."},"warnings":[{"fix":"Update to ESLint 8 or remove conflicting rules","message":"ESLint 7 removal of some rules","severity":"breaking","affected_versions":">=7.0.0"},{"fix":"Use no-relative-imports rule or remove rule from config","message":"Rule 'baseui/no-deep-imports' has been deprecated in v13","severity":"deprecated","affected_versions":">=13.0.0"},{"fix":"Replace with 'baseui/deprecated-theme-api' if needed","message":"Rule 'baseui/theme' removed in v12","severity":"breaking","affected_versions":">=12.0.0"},{"fix":"Use eslint-define-config or convert to flat config manually","message":"Plugin may not work with ESLint 9 flat config without explicit adapter","severity":"gotcha","affected_versions":"<=13.0.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"npm install eslint-plugin-baseui --save-dev","cause":"Plugin not installed as dev dependency","error":"Error: Failed to load plugin 'baseui': Cannot find module 'eslint-plugin-baseui'"},{"fix":"Ensure 'baseui' is in plugins and rule is spelled correctly (e.g. 'baseui/deprecated-theme-api')","cause":"Plugin not listed in 'plugins' array or rule name typo","error":"Definition for rule 'baseui/*' was not found"},{"fix":"Use ESLint 8 or check plugin compatibility table","cause":"Incompatible ESLint major version (e.g. ESLint 9)","error":"ESLint: TypeError: Cannot read properties of undefined (reading 'someRule')"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}