@agilebot/eslint-config
v0.7.3
Published
Agilebot's ESLint config
Downloads
549
Readme
@agilebot/eslint-config
Usage
Manual Install
npm install --save-dev eslint \
@agilebot/eslint-config
And create eslint.config.mjs
in your project root:
// eslint.config.mjs
import { agilebot } from '@agilebot/eslint-config';
export default agilebot(import.meta);
Customization
The agilebot
preset provides a streamlined way to configure your ESLint setup. Here’s how you can use it and customize it based on your needs.
Basic Usage
To get started, import the agilebot
preset:
// eslint.config.mjs
import { agilebot } from '@agilebot/eslint-config';
export default agilebot(import.meta);
This will automatically apply the default configurations provided by agilebot
.
Advanced Customization
If you want more control, you can customize individual integrations using the FactoryOptions
interface. For example:
// eslint.config.mjs
import { agilebot } from '@agilebot/eslint-config';
export default agilebot(import.meta, {
// Replace `.eslintignore` with the `ignores` option
ignores: [
'**/fixtures'
// Add more glob patterns as needed
],
// List of files or directories where development dependencies are allowed
// Accepts glob patterns, e.g., '**/scripts/**', '**/test/**'
devDependencies: ['**/scripts/**', '**/test/**'],
// List of modules to be treated as built-in
// Accepts an array of module names, e.g., ['electron']
coreModules: ['electron'],
// Enable React-specific linting rules
// Accepts `true`, `false`, or a specific version string, e.g., '17.0.0'
react: true,
// Specify the Vue.js version for linting
// Accepts a number, e.g., 2 or 3
vue: 3,
// Enable imports-related configurations
import: true,
// Specify the import resolver to use
// Accepts 'typescript' or 'oxc'
importResolver: 'typescript',
// Enable Lodash-specific linting rules
// Accepts `true` or `false`
lodash: true,
// Enable Prettier for code formatting
// Accepts `true` or `false`
prettier: true,
// Enable or disable JSDoc linting rules
// Accepts `true` or `false`
jsdoc: false,
// Enable ES module linting rules
// Accepts `true` or `false`
module: true,
// Apply specific monorepo configurations
// Accepts a string representing the monorepo scope, e.g., '@my-app'
monorepoScope: '@my-app',
// Custom spelling configurations for CSpell
// Accepts a configuration object or `false` to disable CSpell
cspell: {
words: ['agilebot', 'eslint'],
ignorePaths: ['**/node_modules']
},
// Enable GoDaddy-specific linting configurations
// Accepts `true`, `false`, or 'typescript' for TypeScript-specific rules
godaddy: 'typescript',
// Custom ESLint configuration to override or extend defaults
config: {
rules: {
'no-console': 'warn',
'prefer-const': 'error'
}
}
});