@shayanthenerd/eslint-config 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (128) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +496 -0
  3. package/dist/_virtual/rolldown_runtime.cjs +30 -0
  4. package/dist/configs/base.cjs +44 -0
  5. package/dist/configs/base.js +43 -0
  6. package/dist/configs/commons.cjs +26 -0
  7. package/dist/configs/commons.js +25 -0
  8. package/dist/configs/css.cjs +29 -0
  9. package/dist/configs/css.js +28 -0
  10. package/dist/configs/cypress.cjs +23 -0
  11. package/dist/configs/cypress.js +22 -0
  12. package/dist/configs/html.cjs +23 -0
  13. package/dist/configs/html.js +22 -0
  14. package/dist/configs/importX.cjs +26 -0
  15. package/dist/configs/importX.js +25 -0
  16. package/dist/configs/nuxtMultiRootTemplate.cjs +14 -0
  17. package/dist/configs/nuxtMultiRootTemplate.js +14 -0
  18. package/dist/configs/oxlintOverrides.cjs +49 -0
  19. package/dist/configs/oxlintOverrides.js +48 -0
  20. package/dist/configs/perfectionist.cjs +24 -0
  21. package/dist/configs/perfectionist.js +23 -0
  22. package/dist/configs/playwright.cjs +23 -0
  23. package/dist/configs/playwright.js +22 -0
  24. package/dist/configs/storybook.cjs +24 -0
  25. package/dist/configs/storybook.js +23 -0
  26. package/dist/configs/stylistic.cjs +23 -0
  27. package/dist/configs/stylistic.js +22 -0
  28. package/dist/configs/tailwind.cjs +43 -0
  29. package/dist/configs/tailwind.js +42 -0
  30. package/dist/configs/typescript.cjs +31 -0
  31. package/dist/configs/typescript.js +30 -0
  32. package/dist/configs/vitest.cjs +23 -0
  33. package/dist/configs/vitest.js +22 -0
  34. package/dist/configs/vue.cjs +35 -0
  35. package/dist/configs/vue.js +34 -0
  36. package/dist/configs/vueComponentNames.cjs +19 -0
  37. package/dist/configs/vueComponentNames.js +19 -0
  38. package/dist/index.cjs +55 -0
  39. package/dist/index.d.cts +16 -0
  40. package/dist/index.d.ts +16 -0
  41. package/dist/index.js +54 -0
  42. package/dist/oxlint.config.jsonc +192 -0
  43. package/dist/prettier.config.js +42 -0
  44. package/dist/rules/css.cjs +65 -0
  45. package/dist/rules/css.js +65 -0
  46. package/dist/rules/cypress.cjs +16 -0
  47. package/dist/rules/cypress.js +15 -0
  48. package/dist/rules/html.cjs +53 -0
  49. package/dist/rules/html.js +53 -0
  50. package/dist/rules/importX.cjs +51 -0
  51. package/dist/rules/importX.js +50 -0
  52. package/dist/rules/javascript.cjs +164 -0
  53. package/dist/rules/javascript.js +163 -0
  54. package/dist/rules/perfectionist.cjs +73 -0
  55. package/dist/rules/perfectionist.js +73 -0
  56. package/dist/rules/playwright.cjs +28 -0
  57. package/dist/rules/playwright.js +27 -0
  58. package/dist/rules/storybook.cjs +16 -0
  59. package/dist/rules/storybook.js +15 -0
  60. package/dist/rules/stylistic.cjs +160 -0
  61. package/dist/rules/stylistic.js +160 -0
  62. package/dist/rules/tailwind.cjs +36 -0
  63. package/dist/rules/tailwind.js +36 -0
  64. package/dist/rules/typescript.cjs +62 -0
  65. package/dist/rules/typescript.js +62 -0
  66. package/dist/rules/vitest.cjs +47 -0
  67. package/dist/rules/vitest.js +46 -0
  68. package/dist/rules/vue.cjs +169 -0
  69. package/dist/rules/vue.js +169 -0
  70. package/dist/rules/vueAccessibility.cjs +23 -0
  71. package/dist/rules/vueAccessibility.js +23 -0
  72. package/dist/types/configOptions/base.d.cts +47 -0
  73. package/dist/types/configOptions/base.d.ts +47 -0
  74. package/dist/types/configOptions/css.d.cts +27 -0
  75. package/dist/types/configOptions/css.d.ts +27 -0
  76. package/dist/types/configOptions/html.d.cts +27 -0
  77. package/dist/types/configOptions/html.d.ts +27 -0
  78. package/dist/types/configOptions/importX.d.cts +20 -0
  79. package/dist/types/configOptions/importX.d.ts +20 -0
  80. package/dist/types/configOptions/nuxt.d.cts +42 -0
  81. package/dist/types/configOptions/nuxt.d.ts +42 -0
  82. package/dist/types/configOptions/perfectionist.d.cts +16 -0
  83. package/dist/types/configOptions/perfectionist.d.ts +16 -0
  84. package/dist/types/configOptions/stylistic.d.cts +145 -0
  85. package/dist/types/configOptions/stylistic.d.ts +145 -0
  86. package/dist/types/configOptions/tailwind.d.cts +46 -0
  87. package/dist/types/configOptions/tailwind.d.ts +46 -0
  88. package/dist/types/configOptions/test.d.cts +55 -0
  89. package/dist/types/configOptions/test.d.ts +55 -0
  90. package/dist/types/configOptions/typescript.d.cts +36 -0
  91. package/dist/types/configOptions/typescript.d.ts +36 -0
  92. package/dist/types/configOptions/vue.d.cts +211 -0
  93. package/dist/types/configOptions/vue.d.ts +211 -0
  94. package/dist/types/configOptions/vueAccessibility.d.cts +34 -0
  95. package/dist/types/configOptions/vueAccessibility.d.ts +34 -0
  96. package/dist/types/eslint-schema.d.cts +13258 -0
  97. package/dist/types/eslint-schema.d.ts +13258 -0
  98. package/dist/types/eslintRules.d.cts +12 -0
  99. package/dist/types/eslintRules.d.ts +12 -0
  100. package/dist/types/helpers.d.cts +5 -0
  101. package/dist/types/helpers.d.ts +5 -0
  102. package/dist/types/index.d.cts +360 -0
  103. package/dist/types/index.d.ts +360 -0
  104. package/dist/utils/globs.cjs +31 -0
  105. package/dist/utils/globs.js +30 -0
  106. package/dist/utils/ignores/defaultIgnorePatterns.cjs +58 -0
  107. package/dist/utils/ignores/defaultIgnorePatterns.js +57 -0
  108. package/dist/utils/ignores/getIgnorePatterns.cjs +16 -0
  109. package/dist/utils/ignores/getIgnorePatterns.js +16 -0
  110. package/dist/utils/ignores/resolveGitignorePatterns.cjs +27 -0
  111. package/dist/utils/ignores/resolveGitignorePatterns.js +26 -0
  112. package/dist/utils/isEmptyString.cjs +8 -0
  113. package/dist/utils/isEmptyString.js +7 -0
  114. package/dist/utils/isEnabled.cjs +8 -0
  115. package/dist/utils/isEnabled.js +7 -0
  116. package/dist/utils/isPackageDetected.cjs +22 -0
  117. package/dist/utils/isPackageDetected.js +20 -0
  118. package/dist/utils/options/defaultOptions.cjs +168 -0
  119. package/dist/utils/options/defaultOptions.js +167 -0
  120. package/dist/utils/options/enableDetectedConfigs.cjs +36 -0
  121. package/dist/utils/options/enableDetectedConfigs.js +36 -0
  122. package/dist/utils/options/mergeWithDefaults.cjs +22 -0
  123. package/dist/utils/options/mergeWithDefaults.js +21 -0
  124. package/dist/utils/vue/getRestrictedVueElements.cjs +28 -0
  125. package/dist/utils/vue/getRestrictedVueElements.js +27 -0
  126. package/dist/utils/vue/getRestrictedVueInputs.cjs +24 -0
  127. package/dist/utils/vue/getRestrictedVueInputs.js +23 -0
  128. package/package.json +130 -0
package/package.json ADDED
@@ -0,0 +1,130 @@
1
+ {
2
+ "name": "@shayanthenerd/eslint-config",
3
+ "version": "0.1.0",
4
+ "license": "MIT",
5
+ "description": "A modern, flexible ESLint configuration for enforcing best practices and maintaining a consistent coding style",
6
+ "keywords": [
7
+ "eslint",
8
+ "eslint-config",
9
+ "eslint-flat-config",
10
+ "eslint-config-vue",
11
+ "eslint-config-typescript",
12
+ "oxlint",
13
+ "oxlint-config"
14
+ ],
15
+ "homepage": "https://eslint-config.shayan-zamani.me",
16
+ "repository": {
17
+ "type": "git",
18
+ "url": "git+https://github.com/ShayanTheNerd/eslint-config.git"
19
+ },
20
+ "bugs": {
21
+ "url": "https://github.com/ShayanTheNerd/eslint-config/issues/new?template=bug_report.md"
22
+ },
23
+ "author": {
24
+ "name": "Shayan Zamani",
25
+ "email": "dev.shayan.zamani@gmail.com",
26
+ "url": "https://github.com/ShayanTheNerd"
27
+ },
28
+ "funding": "https://buymeacoffee.com/shayanthenerd",
29
+ "engines": {
30
+ "node": ">=20.12.0"
31
+ },
32
+ "files": [
33
+ "./dist"
34
+ ],
35
+ "main": "./dist/index.cjs",
36
+ "module": "./dist/index.js",
37
+ "types": "./dist/index.d.cts",
38
+ "exports": {
39
+ ".": {
40
+ "import": "./dist/index.js",
41
+ "require": "./dist/index.cjs"
42
+ },
43
+ "./package.json": "./package.json",
44
+ "./types/*": "./dist/types/*",
45
+ "./oxlint": "./dist/oxlint.config.jsonc",
46
+ "./prettier": "./dist/prettier.config.js"
47
+ },
48
+ "publishConfig": {
49
+ "access": "public"
50
+ },
51
+ "imports": {
52
+ "#utils/*": "./src/utils/*",
53
+ "#types/*": "./src/types/*",
54
+ "#rules/*": "./src/rules/*",
55
+ "#configs/*": "./src/configs/*"
56
+ },
57
+ "type": "module",
58
+ "packageManager": "bun@1.2.19",
59
+ "scripts": {
60
+ "postinstall": "bun simple-git-hooks && bun generate:types",
61
+ "prepublishOnly": "bun ci:validate",
62
+ "inspect": "bunx @eslint/config-inspector",
63
+ "build:package": "tsdown --no-report",
64
+ "build:inspector": "bunx @eslint/config-inspector build --config='./scripts/defaultESLintConfigReference.ts'",
65
+ "preview:inspector": "bunx serve .eslint-config-inspector",
66
+ "generate:types": "bun './scripts/generateESLintTypes.ts'",
67
+ "format": "prettier --write . '!**/*.{js,ts}' --cache",
68
+ "lint:oxlint": "oxlint --fix",
69
+ "lint:eslint": "eslint --fix --cache --cache-location='./node_modules/.cache/.eslintcache'",
70
+ "lint": "bun lint:oxlint && bun lint:eslint",
71
+ "check:types": "tsc --noEmit",
72
+ "check:exports": "bunx @arethetypeswrong/cli --pack --exclude-entrypoints ./prettier ./oxlint",
73
+ "check:spell": "bunx cspell . --gitignore --cache --cache-location='./node_modules/.cache/.cspellcache'",
74
+ "ci:validate": "bun generate:types && bun format && bun lint && bun check:types && bun --bun build:inspector && bun build:package && bun check:exports"
75
+ },
76
+ "simple-git-hooks": {
77
+ "pre-commit": "bun lint-staged"
78
+ },
79
+ "dependencies": {
80
+ "@eslint/compat": "1.3.1",
81
+ "@eslint/css": "0.10.0",
82
+ "@eslint/js": "9.31.0",
83
+ "@html-eslint/eslint-plugin": "0.43.1",
84
+ "@stylistic/eslint-plugin": "5.2.2",
85
+ "@vitest/eslint-plugin": "1.3.4",
86
+ "defu": "6.1.4",
87
+ "eslint": "9.31.0",
88
+ "eslint-flat-config-utils": "2.1.0",
89
+ "eslint-plugin-better-tailwindcss": "3.7.1",
90
+ "eslint-plugin-cypress": "5.1.0",
91
+ "eslint-plugin-import-x": "4.16.1",
92
+ "eslint-plugin-oxlint": "1.8.0",
93
+ "eslint-plugin-perfectionist": "4.15.0",
94
+ "eslint-plugin-playwright": "2.2.0",
95
+ "eslint-plugin-storybook": "9.0.18",
96
+ "eslint-plugin-unused-imports": "4.1.4",
97
+ "eslint-plugin-vue": "10.3.0",
98
+ "eslint-plugin-vuejs-accessibility": "2.4.1",
99
+ "globals": "16.3.0",
100
+ "local-pkg": "1.1.1",
101
+ "oxlint": "1.8.0",
102
+ "tailwind-csstree": "0.1.1",
103
+ "typescript-eslint": "8.38.0"
104
+ },
105
+ "peerDependencies": {
106
+ "eslint-import-resolver-typescript": "^4.4.4"
107
+ },
108
+ "peerDependenciesMeta": {
109
+ "eslint-import-resolver-typescript": {
110
+ "optional": true
111
+ }
112
+ },
113
+ "devDependencies": {
114
+ "@types/node": "24.1.0",
115
+ "eslint-import-resolver-typescript": "4.4.4",
116
+ "eslint-typegen": "2.3.0",
117
+ "lint-staged": "16.1.2",
118
+ "prettier": "3.6.2",
119
+ "publint": "0.3.12",
120
+ "simple-git-hooks": "2.13.0",
121
+ "tsdown": "0.13.0",
122
+ "typescript": "5.8.3",
123
+ "unplugin-unused": "0.5.1"
124
+ },
125
+ "trustedDependencies": [
126
+ "esbuild",
127
+ "unrs-resolver",
128
+ "simple-git-hooks"
129
+ ]
130
+ }