Files
n8n/packages/@n8n/eslint-plugin-community-nodes
alighasami 3d5eaf9445
Some checks failed
Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled
first commit
2026-03-17 16:22:57 +03:30
..
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30
2026-03-17 16:22:57 +03:30

@n8n/eslint-plugin-community-nodes

ESLint plugin for linting n8n community node packages to ensure consistency and best practices.

Install

npm install --save-dev eslint @n8n/eslint-plugin-community-nodes

**Requires ESLint >=9 and flat config

Usage

See the ESLint docs for more information about extending config files.

This plugin exports a recommended config that enforces good practices.

import { n8nCommunityNodesPlugin } from '@n8n/eslint-plugin-community-nodes';

export default [
		// …
		n8nCommunityNodesPlugin.configs.recommended,
		{
			rules: {
				'@n8n/community-nodes/node-usable-as-tool': 'warn',
			},
		},
];

Rules

💼 Configurations enabled in.
⚠️ Configurations set to warn in.
Set in the recommended configuration.
☑️ Set in the recommendedWithoutN8nCloudSupport configuration.
🔧 Automatically fixable by the --fix CLI option.
💡 Manually fixable by editor suggestions.

Name                             Description 💼 ⚠️ 🔧 💡
credential-documentation-url Enforce valid credential documentationUrl format (URL or camelCase slug) ☑️
credential-password-field Ensure credential fields with sensitive names have typeOptions.password = true ☑️ 🔧
credential-test-required Ensure credentials have a credential test ☑️ 💡
icon-validation Validate node and credential icon files exist, are SVG format, and light/dark icons are different ☑️ 💡
no-credential-reuse Prevent credential re-use security issues by ensuring nodes only reference credentials from the same package ☑️ 💡
no-deprecated-workflow-functions Disallow usage of deprecated functions and types from n8n-workflow package ☑️ 💡
no-restricted-globals Disallow usage of restricted global variables in community nodes.
no-restricted-imports Disallow usage of restricted imports in community nodes.
node-usable-as-tool Ensure node classes have usableAsTool property ☑️ 🔧
package-name-convention Enforce correct package naming convention for n8n community nodes ☑️ 💡
resource-operation-pattern Enforce proper resource/operation pattern for better UX in n8n nodes ☑️