{"id":20014,"library":"esprint","title":"esprint","description":"esprint (v3.6.0) is a parallelized ESLint runner that speeds up linting by running the linting engine across multiple threads. It sets up a server daemon to cache lint results in memory and uses a file watcher to only lint changed files. It also offers a CI mode that runs linting in parallel without a daemon. Maintenance is sporadic; the last release was in 2021. Key differentiators include automatic CPU core utilization, a background server for caching, and a dedicated CI mode. Requires Node >=12 and ESLint >=7.","status":"maintenance","version":"3.6.0","language":"javascript","source_language":"en","source_url":"https://github.com/pinterest/esprint","tags":["javascript"],"install":[{"cmd":"npm install esprint","lang":"bash","label":"npm"},{"cmd":"yarn add esprint","lang":"bash","label":"yarn"},{"cmd":"pnpm add esprint","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Peer dependency: esprint runs ESLint internally","package":"eslint","optional":false}],"imports":[{"note":"esprint is primarily a CLI tool; there is no JavaScript API export.","wrong":"npx eslint","symbol":"esprint (CLI)","correct":"npx esprint"},{"note":"Use 'esprint check' for CI mode (no daemon).","wrong":"npx eslint .","symbol":"esprint check","correct":"npx esprint check"},{"note":"Stops the background server and clears cache.","wrong":"kill <pid>","symbol":"esprint stop","correct":"npx esprint stop"}],"quickstart":{"code":"// .esprintrc\n{\n  \"paths\": [\"src/**/*.js\"],\n  \"ignored\": [\"**/node_modules/**\"],\n  \"port\": 5004\n}\n\n// Terminal\nesprint --workers=4\nesprint check --fix","lang":"javascript","description":"Configure paths in .esprintrc, then run esprint in default or CI mode."},"warnings":[{"fix":"Use --workers CLI argument instead of .esprintrc configuration.","message":"The option to specify number of workers has been removed from .esprintrc in v0.4.0-beta.10.","severity":"breaking","affected_versions":">=0.4.0-beta.10"},{"fix":"Consider alternatives like eslint-plugin-only-warn or lint-staged with parallel.","message":"esprint is no longer actively maintained; no releases since 2021.","severity":"deprecated","affected_versions":">=3.0.0"},{"fix":"Create a .esprintrc file in your project root with paths and ignored lists.","message":"esprint requires .esprintrc file in project root; absence causes error.","severity":"gotcha","affected_versions":">=0.4.0"},{"fix":"Ensure .esprintrc is in the root directory.","message":"Running esprint from a subfolder may not work correctly if .esprintrc is not at project root.","severity":"gotcha","affected_versions":"<0.4.0"},{"fix":"Specify a different port in .esprintrc or use esprint check to avoid daemon.","message":"esprint uses a background server on a port; conflicts with other services possible.","severity":"gotcha","affected_versions":">=0.4.0"}],"env_vars":null,"last_verified":"2026-04-25T00:00:00.000Z","next_check":"2026-07-24T00:00:00.000Z","problems":[{"fix":"Create a .esprintrc file with paths and ignored fields.","cause":"Missing configuration file in project root.","error":"Error: No .esprintrc file found"},{"fix":"Run npm install eslint@>=7","cause":"ESLint peer dependency not installed.","error":"Error: Cannot find module 'eslint'"},{"fix":"Specify an unused port in .esprintrc or kill the offending process.","cause":"Another process is using the default or configured port.","error":"Error: Port 5004 is already in use"}],"ecosystem":"npm","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}