Package

ESLint rules for seedcord bots. The seedcord preset layers these over eslint-plugin-discordjs's recommended, so one entry covers both the framework rules and the discord.js rules. The preset is for setups with their own ESLint config. A project on @seedcord/eslint-config sets registerSeedcordPlugin and registerDiscordjsPlugin instead.
// eslint.config.js
import { defineConfig } from 'eslint/config';
import seedcord from '@seedcord/eslint-plugin';
import tseslint from 'typescript-eslint';
export default defineConfig(
// ...your existing config
{
files: ['**/*.ts'],
extends: [seedcord.configs.seedcord],
languageOptions: {
parser: tseslint.parser,
parserOptions: {
projectService: true,
tsconfigRootDir: import.meta.dirname
}
}
}
);// eslint.config.js
import { defineConfig } from 'eslint/config';
import seedcord from '@seedcord/eslint-plugin';
import tseslint from 'typescript-eslint';
export default defineConfig(
// ...your existing config
{
files: ['**/*.ts'],
extends: [seedcord.configs.seedcord],
languageOptions: {
parser: tseslint.parser,
parserOptions: {
projectService: true,
tsconfigRootDir: import.meta.dirname
}
}
}
);The rules read types, so they need typed linting (projectService). If your config already sets it up, drop the languageOptions block and keep the scoped extends entry.
Part of the seedcord framework. Until a major v1.0.0 release, expect breaking changes in minor versions.