UNPKG

@shayanthenerd/eslint-config

Version:

A modern, flexible ESLint configuration for enforcing best practices and maintaining a consistent coding style

150 lines 5.16 kB
{ "name": "@shayanthenerd/eslint-config", "version": "0.30.1", "description": "A modern, flexible ESLint configuration for enforcing best practices and maintaining a consistent coding style", "keywords": [ "eslint", "eslint-config" ], "homepage": "https://eslintconfig.netlify.app", "bugs": { "email": "dev.shayan.zamani@gmail.com", "url": "https://github.com/ShayanTheNerd/eslint-config/issues/new?template=bug_report.md" }, "repository": { "type": "git", "url": "git+https://github.com/ShayanTheNerd/eslint-config.git" }, "funding": "https://buymeacoffee.com/shayanthenerd", "license": "MIT", "author": { "name": "Shayan Zamani", "email": "dev.shayan.zamani@gmail.com", "url": "https://github.com/ShayanTheNerd" }, "type": "module", "imports": { "#configs/*": "./src/configs/*", "#helpers/*": "./src/helpers/*", "#rules/*": "./src/rules/*", "#types/*": "./src/types/*", "#utils/*": "./src/utils/*" }, "exports": { ".": "./dist/index.mjs", "./package.json": "./package.json", "./prettier": "./dist/prettier.config.mjs" }, "types": "./dist/index.d.mts", "files": [ "./dist" ], "simple-git-hooks": { "pre-commit": "./node_modules/.bin/nano-staged" }, "nano-staged": { "**/*.{json,yaml}!pnpm-lock.yaml": "pnpm format", "pnpm-lock.yaml": [ "pnpm generate:types", "pnpm generate:docs", "git add src/types/eslint-schema.d.ts README.md" ], "src/types/**/*.d.ts": [ "pnpm generate:docs", "git add README.md" ], "{**/*.ts,package.json}": "pnpm lint" }, "dependencies": { "@eslint-react/eslint-plugin": "5.18.6", "@eslint/css": "1.4.0", "@eslint/markdown": "8.0.3", "@html-eslint/eslint-plugin": "0.65.0", "@html-eslint/eslint-plugin-react": "0.65.0", "@next/eslint-plugin-next": "16.3.2", "@nuxt/eslint-plugin": "1.17.0", "@stylistic/eslint-plugin": "5.10.0", "@vitest/eslint-plugin": "1.6.27", "astro-eslint-parser": "3.1.0", "defu": "6.1.7", "eslint-flat-config-utils": "3.2.0", "eslint-import-resolver-typescript": "4.4.5", "eslint-plugin-astro": "3.1.0", "eslint-plugin-baseline-js": "0.7.1", "eslint-plugin-better-tailwindcss": "4.7.0", "eslint-plugin-cypress": "7.0.1", "eslint-plugin-import-x": "4.17.1", "eslint-plugin-jsx-a11y": "6.10.2", "eslint-plugin-n": "18.3.0", "eslint-plugin-package-json": "1.7.1", "eslint-plugin-perfectionist": "5.10.1", "eslint-plugin-playwright": "2.11.0", "eslint-plugin-promise": "7.3.0", "eslint-plugin-storybook": "10.5.10", "eslint-plugin-unicorn": "73.0.0", "eslint-plugin-vue": "10.10.0", "eslint-plugin-vuejs-accessibility": "2.6.0", "eslint-plugin-zod": "4.9.1", "eslint-plugin-zod-mini": "1.6.1", "globals": "17.11.0", "local-pkg": "1.2.1", "nuxt-link-checker": "5.3.0", "tailwind-csstree": "0.3.3", "typescript-eslint": "8.67.0" }, "devDependencies": { "@arethetypeswrong/cli": "0.18.5", "@eslint/config-inspector": "3.3.0", "@types/eslint-plugin-jsx-a11y": "6.10.1", "@types/node": "26.2.0", "eslint": "10.9.0", "eslint-typegen": "2.3.1", "nano-staged": "1.0.2", "prettier": "3.9.6", "publint": "0.3.24", "serve": "14.2.6", "simple-git-hooks": "2.13.1", "ts-morph": "28.0.0", "tsdown": "0.22.14", "typescript": "6.0.3", "unplugin-unused": "0.6.0" }, "peerDependencies": { "eslint": "^10.9.0" }, "engines": { "node": "^20.19.0 || ^22.13.0 || ^24.0.0 || ^26.0.0" }, "devEngines": { "packageManager": { "name": "pnpm", "version": "11.22.0", "onFail": "warn" }, "runtime": { "name": "node", "version": "^22.22.3 || ^24.15.0 || ^26.0.0", "onFail": "warn" } }, "publishConfig": { "access": "public" }, "scripts": { "git:gitmessage": "git config --local commit.template '.gitmessage'", "update:deps": "pnpm update --latest && pnpm dedupe && pnpm generate:types && pnpm generate:docs", "check:spell": "pnpx cspell . --gitignore --exclude='pnpm-lock.yaml' --cache --cache-location='./node_modules/.cache/.cspellcache'", "inspect": "pnpm build:package && eslint-config-inspector", "build:inspector": "eslint-config-inspector build --config=./scripts/configs/eslint.config.reference.ts --outDir=./netlify/eslint-config-inspector", "preview:inspector": "serve ./netlify/eslint-config-inspector", "generate:types": "node ./scripts/generateEslintTypes.ts", "generate:docs": "node ./scripts/generateApiDocs.ts", "check:types": "tsc", "build:package": "tsdown", "watch:package": "tsdown --watch --publint=false", "check:exports": "attw --pack --profile=esm-only", "format": "prettier --write '**/*.{json,yaml}' '!pnpm-lock.yaml' --cache", "lint": "eslint --fix --max-warnings=0 --cache --cache-location=./node_modules/.cache/.eslintcache", "ci:validate": "pnpm format && pnpm build:package && pnpm lint && pnpm check:types && pnpm build:inspector && pnpm build:package && pnpm check:exports" } }