Sherif is an opinionated, zero-config linter designed specifically for TypeScript and JavaScript monorepos. It aims to standardize the developer experience (DX) and prevent regressions by enforcing a predefined set of rules across multiple packages within a single repository. Written in Rust for performance, Sherif operates efficiently without requiring `node_modules` to be installed, supporting all major package managers including PNPM, Bun, NPM, and Yarn. The current stable version is 1.11.1, with frequent minor releases indicating active development and maintenance. Key differentiators include its zero-configuration approach, cross-package manager compatibility, high execution speed, and robust autofix capabilities which can be run interactively or non- interactively via a `--select` flag for consistent dependency versioning.
npm install sherifVerified import paths — ran on the pinned version, not inferred.
Demonstrates `sherif` configuration in `package.json` for linting and autofixing monorepo issues, along with example `scripts` for execution.
Ensure your GitHub Actions workflow or CI environment uses Node.js 24 or newer for the `QuiiBz/sherif` action. Update the `actions/setup-node@vX` step to `v24` or higher if running `npx` directly.
For CI/CD pipelines where autofixing is desired, you must use the `--select highest` or `--select lowest` flags in conjunction with `--fix` to bypass interactive prompts. Alternatively, consider running autofix locally before committing.
If your CI requires strict adherence to all linting rules, include `--fail-on-warnings` in your Sherif command or configure `failOnWarnings: true` in your `package.json`'s `sherif` field.
Always specify a fixed version of Sherif in CI commands (e.g., `npx sherif@1.11.1`) or within your GitHub Action configuration (`version: 'v1.11.1'`) to ensure reproducible builds.
Review Sherif's output to identify the reported issues. Run `npx sherif@latest --fix` to attempt automatic resolution for most problems, or apply manual fixes. If warnings are acceptable in CI, remove the `--fail-on-warnings` flag.
If you wish to prevent Sherif from running `install` after autofix, use the `--no-install` flag (or `noInstall: true` in config). Otherwise, ensure your environment allows package manager commands to run.
Verify the spelling and existence of the flag in Sherif's documentation. Ensure that arguments are passed correctly, distinguishing between CLI flags and configuration options in `package.json`. CLI arguments take precedence over `package.json` configuration.
No dependency data recorded yet.