eslint-config-wantedly-typescript provides a comprehensive ESLint configuration tailored for TypeScript projects, specifically designed for Wantedly's development ecosystem. Currently stable at version 4.0.0, this package aligns with the latest ESLint v9 and its new "Flat Config" format, offering a modern approach to linting. It bundles popular plugins and configurations, including `@typescript-eslint` for TypeScript-specific rules, `react` for JSX and React hooks, `import` for import statement validation, `jsx-a11y` for accessibility, `jest` for testing environments, and `prettier` for code formatting integration. While version 4.x exclusively supports the flat config format, earlier versions (3.x and below) provide compatibility with ESLint v8 and its legacy configuration style. The package aims to standardize code style and catch common errors in TypeScript, React, and related JavaScript projects. Releases generally follow major ESLint versions for compatibility updates, with smaller patches for dependency management and bug fixes.
npm install eslint-config-wantedly-typescriptVerified import paths — ran on the pinned version, not inferred.
Demonstrates how to set up `eslint-config-wantedly-typescript` v4.x using ESLint's Flat Config format in an `eslint.config.js` file, including basic customization.
Upgrade your ESLint installation to v9 or higher. If you must remain on ESLint v8, use `eslint-config-wantedly-typescript` version 3.x and maintain your legacy `.eslintrc` configuration files. Migrate your ESLint configuration to `eslint.config.js` using ESM import syntax.
Check your `package.json` for the `typescript` peer dependency range (e.g., `>=3.3.1`). Install a `typescript` version that satisfies this requirement, e.g., `npm install typescript@latest --save-dev`.
Ensure all related `frolint` packages (e.g., `eslint-plugin-wantedly`) are updated to their v4.x versions to maintain compatibility when upgrading to ESLint v9.
For v4.x, ensure you are using an `eslint.config.js` file and importing the configuration using ESM syntax: `import { base as configWantedlyTS } from 'eslint-config-wantedly-typescript';`Upgrade ESLint to version 9.x or later (`npm install eslint@latest --save-dev`) and ensure your main configuration file is named `eslint.config.js` (or `.mjs`/`.cjs`).
Ensure your `eslint.config.js` or relevant parser options specify `sourceType: 'module'` in the parser configuration. For example: `parserOptions: { ecmaVersion: 'latest', sourceType: 'module' }`.