ESLint configuration shared across projects in Apify.
This repository contains a shared eslint config used across Apify. It offers several configs:
- JavaScript config @apify/eslint-config/js
- TypeScript config that also includes JavaScript config @apify/eslint-config/ts
- Jest config that only applies to test files and folders @apify/eslint-config/jest
First install the packages as development dependencies:
``bash`
npm install --save-dev @apify/eslint-config eslint
Optionally, you can install typescript-eslint or eslint-plugin-jest if you intend to use TypeScript or Jest.
Add eslint.config.js file, here's an example configuration for a TypeScript project using ESM and Jest for tests:
`js
import apifyTypescriptConfig from '@apify/eslint-config/ts';
// Optional
import apifyJestConfig from '@apify/eslint-config/jest';
export default [
...apifyTypescriptConfig,
...apifyJestConfig,
{
languageOptions: {
sourceType: 'module',
parserOptions: {
projectService: true,
tsconfigRootDir: import.meta.dirname,
},
},
},
];
`
An example configuration for a JavaScript project using CommonJS without Jest:
`js
const apifyJsConfig = require('@apify/eslint-config/js');
module.exports = [
...apifyJsConfig,
];
``