# ESLint vs Pylint

| Attribute | ESLint | Pylint |
|---|---|---|
| **Vioscale score** | 73.6 (79% (high)) | 72.2 (54% (medium)) |
| activity.commits_last_30d | 50 | 96 |
| adoption.dependent_repos | 1,569,244 | 117,361 |
| adoption.github_stars | 27,484 | 5,715 |
| adoption.package_downloads_weekly | 160,098,819 | - |
| deployment.options | `{"self_hosted":true}` | `{"self_hosted":true}` |
| description.long | An open-source linter and fixer for JavaScript and JSX that runs locally in editors and CI pipelines. It uses AST analysis to catch problems and can automatically fix many issues, with full support for custom rules and extensibility. | Pylint automatically scans Python source code to identify problems with coding standards compliance, detect runtime errors, and suggest refactoring improvements. It supports extensive customization through configuration files and plugins. |
| features.capabilities | `{"autofix":true,"function":"linter_formatter","ci_gating":true,"deployment":"cli_local","open_source":"oss","config_model":"config_file","custom_rules":true,"impl_language":"JavaScript","pricing_model":"free","language_scope":"single_language","editor_integration":true}` | `{"autofix":false,"metrics":true,"function":"linter","ci_gating":true,"deployment":"cli_local","open_source":"oss","config_model":"config_file","custom_rules":true,"impl_language":"Python","pricing_model":"free","language_scope":"single_language","editor_integration":true}` |
| integrations.count | 2 | 10 |
| integrations.list | `[{"name":"eslint-plugin-react"},{"name":"eslint-plugin-unicorn"}]` | `[{"name":"Vim"},{"name":"Emacs"},{"name":"Eclipse"},{"name":"TextMate"},{"name":"PyDev"},{"name":"Spyder"},{"name":"Editra"},{"name":"Jenkins"},{"name":"Hudson"},{"name":"Apycot"}]` |
| language.primary | JavaScript | Python |
| license.spdx | MIT | GPL-2.0 |
| platform.support | `{"cli":true}` | `{"cli":true,"mac":true,"linux":true,"windows":true}` |
| pricing | `{"type":"open_source","plans":[{"free":true,"name":"Open Source","features":["Find issues in JavaScript code","Automatically fix problems","Custom parsers","Custom rules","Text editor integration","CI pipeline integration"],"description":"Free open source linter","contactSales":false}],"summary":"Free open source","freeTier":true,"sourceUrl":"https://eslint.org","retrievedAt":"2026-08-05T14:08:29.561Z"}` | `{"type":"free","summary":"Free and open source. Commercial support services available.","freeTier":true,"sourceUrl":"https://www.pylint.org/","retrievedAt":"2026-08-14T11:08:27.719Z"}` |
| pricing.free_tier | yes | yes |
| pricing.model | commercial | commercial |
| pricing.price_level | free | free |
| pricing.transparent | - | yes |
| release.cadence_days | 13 | 24 |
| release.history | `[{"url":"https://github.com/eslint/eslint/releases/tag/v10.9.1","date":"2026-08-24T18:18:59Z","type":"stable","version":"v10.9.1"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.9.0","date":"2026-08-21T13:05:50Z","type":"stable","version":"v10.9.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.8.1","date":"2026-08-07T20:16:24Z","type":"stable","version":"v10.8.1"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.8.0","date":"2026-07-24T20:15:28Z","type":"stable","version":"v10.8.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.7.0","date":"2026-07-10T21:22:56Z","type":"stable","version":"v10.7.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v9.39.5","date":"2026-07-10T20:41:58Z","type":"stable","version":"v9.39.5"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.6.0","date":"2026-06-26T20:09:26Z","type":"stable","version":"v10.6.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.5.0","date":"2026-06-12T17:54:47Z","type":"stable","version":"v10.5.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.4.1","date":"2026-05-29T20:32:39Z","type":"stable","version":"v10.4.1"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.4.0","date":"2026-05-15T14:11:22Z","type":"stable","version":"v10.4.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.3.0","date":"2026-05-01T15:39:48Z","type":"stable","version":"v10.3.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.2.1","date":"2026-04-17T20:17:51Z","type":"stable","version":"v10.2.1"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.2.0","date":"2026-04-03T20:36:28Z","type":"stable","version":"v10.2.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.1.0","date":"2026-03-20T15:31:47Z","type":"stable","version":"v10.1.0"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.0.3","date":"2026-03-06T22:53:26Z","type":"stable","version":"v10.0.3"},{"url":"https://github.com/eslint/eslint/releases/tag/v9.39.4","date":"2026-03-06T21:46:54Z","type":"stable","version":"v9.39.4"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.0.2","date":"2026-02-23T21:43:46Z","type":"stable","version":"v10.0.2"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.0.1","date":"2026-02-20T15:15:18Z","type":"stable","version":"v10.0.1"},{"url":"https://github.com/eslint/eslint/releases/tag/v9.39.3","date":"2026-02-20T13:52:17Z","type":"stable","version":"v9.39.3"},{"url":"https://github.com/eslint/eslint/releases/tag/v10.0.0","date":"2026-02-06T22:30:54Z","type":"stable","version":"v10.0.0"}]` | `[{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.7","date":"2026-08-09T19:12:32Z","type":"stable","version":"v4.0.7"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.6","date":"2026-06-14T14:42:38Z","type":"stable","version":"v4.0.6"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.5","date":"2026-02-20T09:06:45Z","type":"stable","version":"v4.0.5"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.4","date":"2025-11-30T13:28:26Z","type":"stable","version":"v4.0.4"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.3","date":"2025-11-13T15:53:59Z","type":"stable","version":"v4.0.3"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.2","date":"2025-10-20T13:01:44Z","type":"stable","version":"v4.0.2"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.1","date":"2025-10-15T05:40:09Z","type":"stable","version":"v4.0.1"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v4.0.0","date":"2025-10-12T15:16:43Z","type":"stable","version":"v4.0.0"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.9","date":"2025-10-05T18:37:27Z","type":"stable","version":"v3.3.9"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.8","date":"2025-08-09T09:12:00Z","type":"stable","version":"v3.3.8"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.7","date":"2025-05-04T17:07:12Z","type":"stable","version":"v3.3.7"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.6","date":"2025-03-20T11:24:54Z","type":"stable","version":"v3.3.6"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.5","date":"2025-03-09T06:47:06Z","type":"stable","version":"v3.3.5"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.5a0","date":"2025-03-08T22:20:59Z","type":"prerelease","version":"v3.3.5a0"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.4","date":"2025-01-28T13:27:51Z","type":"stable","version":"v3.3.4"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.3","date":"2024-12-24T02:30:21Z","type":"stable","version":"v3.3.3"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.2","date":"2024-12-01T18:45:02Z","type":"stable","version":"v3.3.2"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.1","date":"2024-09-24T11:10:22Z","type":"stable","version":"v3.3.1"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.3.0","date":"2024-09-20T13:03:35Z","type":"stable","version":"v3.3.0"},{"url":"https://github.com/pylint-dev/pylint/releases/tag/v3.2.7","date":"2024-08-31T14:25:58Z","type":"stable","version":"v3.2.7"}]` |
| security.scorecard | 6.3 | 8.1 |
| security.vulnerabilities | `{"count":2,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=npm&package_name=eslint&per_page=100","last_12m":1,"max_severity":"MODERATE"}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=pylint&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (Code Quality Tools)

| Capability | ESLint | Pylint |
|---|:--:|:--:|
| **Core** |  |  |
| Function | Linter + formatter | Linter |
| Language scope | Single-language | Single-language |
| Implementation language | JavaScript | Python |
| **Capability** |  |  |
| Autofix | ✓ | ✗ |
| **Config** |  |  |
| Config model | Config file | Config file |
| **Extensibility** |  |  |
| Custom rules | ✓ | ✓ |
| **Deployment** |  |  |
| Deployment | CLI-local | CLI-local |
| **Delivery** |  |  |
| Editor integration | ✓ | ✓ |
| CI / VCS gating | ✓ | ✓ |
| **Insight** |  |  |
| Code metrics | - | ✓ |
| **Performance** |  |  |
| Incremental / monorepo aware | - | - |
| **Licensing** |  |  |
| Open-source | OSS | OSS |
| **Commercial** |  |  |
| Pricing model | Free | Free |

*Source: Vioscale. Generated 2026-09-01T17:22:59.573Z. "-" = undocumented, not absent.*
