@mikey-pro/eslint-config 9.0.1 → 9.0.7

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.
package/README.md CHANGED
@@ -1,43 +1,48 @@
1
- <div width="100%" align="center">
2
- <h1>
3
- <a href="https://github.com/chiefmikey/mikey-pro">
4
- <b>Mikey Pro</b>
5
- </a>
6
- </h1>
7
- </div>
1
+ # @mikey-pro/eslint-config
8
2
 
9
- ## **@mikey-pro/eslint-config**
3
+ Core ESLint configuration for the Mikey Pro style guide.
10
4
 
11
- A preset ESLint configuration
5
+ ## Installation
12
6
 
13
- ## Usage
7
+ ```bash
8
+ npm install @mikey-pro/eslint-config
9
+ ```
14
10
 
15
- ### Install
11
+ ## Usage
16
12
 
17
- ```shell
18
- npm i -D mikey-pro
13
+ ```javascript
14
+ // eslint.config.js
15
+ export { default } from '@mikey-pro/eslint-config';
19
16
  ```
20
17
 
21
- ### Configure (Flat ESLint v9+ Recommended)
18
+ ## Features
22
19
 
23
- Create / update `eslint.config.js`:
20
+ - 50+ ESLint plugins for comprehensive code quality
21
+ - TypeScript first-class support
22
+ - Security-focused rules
23
+ - Performance optimizations
24
+ - Import/export organization
25
+ - Auto-fixable formatting rules
24
26
 
25
- ```js
26
- import mikeyPro from '@mikey-pro/eslint-config/flat';
27
+ ## Supported File Types
27
28
 
28
- export default mikeyPro;
29
- ```
29
+ JavaScript, TypeScript, JSON, YAML, TOML, HTML, CSS, SCSS
30
30
 
31
- ### Legacy Configuration (still supported)
31
+ ## Customization
32
32
 
33
- Extend in `package.json` (deprecated style):
33
+ ```javascript
34
+ // eslint.config.js
35
+ import { default as baseConfig } from '@mikey-pro/eslint-config';
34
36
 
35
- ```json
36
- {
37
- "eslintConfig": {
38
- "extends": ["@mikey-pro/eslint-config"]
39
- }
40
- }
37
+ export default [
38
+ ...baseConfig,
39
+ {
40
+ files: ['**/*.test.{js,ts}'],
41
+ rules: {
42
+ 'no-console': 'off',
43
+ },
44
+ },
45
+ ];
41
46
  ```
42
47
 
43
- Both configurations are kept semantically equivalent; the legacy form will be removed in a future major release.
48
+ See [Mikey Pro](https://github.com/chiefmikey/mikey-pro) for full documentation.
package/index.js CHANGED
@@ -42,6 +42,7 @@ export default [
42
42
  'CNAME',
43
43
  '*.min.js',
44
44
  '*.min.css',
45
+ '**/*.md', // Markdown files require special processor configuration
45
46
  ],
46
47
  },
47
48
 
package/overrides.js CHANGED
@@ -10,6 +10,8 @@ import cypress from 'eslint-plugin-cypress';
10
10
  import importPlugin from 'eslint-plugin-import';
11
11
  import jest from 'eslint-plugin-jest';
12
12
  import markdownlint from 'eslint-plugin-markdownlint';
13
+ import prettier from 'eslint-plugin-prettier';
14
+ import yml from 'eslint-plugin-yml';
13
15
  import jsoncParser from 'jsonc-eslint-parser';
14
16
  import tomlParser from 'toml-eslint-parser';
15
17
  import yamlParser from 'yaml-eslint-parser';
@@ -246,8 +248,10 @@ export const yaml = {
246
248
  languageOptions: {
247
249
  parser: yamlParser,
248
250
  },
251
+ plugins: {
252
+ yml: yml,
253
+ },
249
254
  rules: {
250
- 'prettier/prettier': ['warn', { parser: 'yaml', singleQuote: false }],
251
255
  'yml/quotes': ['warn', { avoidEscape: true, prefer: 'double' }],
252
256
  },
253
257
  };
@@ -263,18 +267,10 @@ export const toml = {
263
267
  },
264
268
  };
265
269
 
266
- // Markdown files
270
+ // Markdown files - currently disabled due to processor configuration issues
267
271
  export const md = {
268
272
  files: ['**/*.md'],
269
- plugins: {
270
- markdownlint,
271
- },
272
- rules: {
273
- ...markdownlint.configs.recommended.rules,
274
- 'markdownlint/md033': 'off',
275
- 'markdownlint/md041': 'off',
276
- 'prettier/prettier': ['warn', { parser: 'markdown' }],
277
- },
273
+ // TODO: Implement proper markdown linting with @eslint/markdown
278
274
  };
279
275
 
280
276
  // Package.json files
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mikey-pro/eslint-config",
3
- "version": "9.0.1",
3
+ "version": "9.0.7",
4
4
  "description": "Mikey Pro ESLint configuration - Ultimate coding style guide for excellence",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -25,8 +25,7 @@
25
25
  "eslint-plugin-css-modules": "^2.12.0",
26
26
  "eslint-plugin-cypress": "^5.1.1",
27
27
  "eslint-plugin-filenames": "^1.3.2",
28
- "eslint-plugin-import": "^2.32.0",
29
- "eslint-plugin-jest": "^29.0.1",
28
+ "@eslint/markdown": "^6.1.0",
30
29
  "eslint-plugin-jest-dom": "^5.5.0",
31
30
  "eslint-plugin-jsonc": "^2.20.1",
32
31
  "eslint-plugin-markdownlint": "^0.9.0",
@@ -112,11 +111,12 @@
112
111
  ],
113
112
  "type": "module",
114
113
  "engines": {
115
- "node": ">=18.0.0",
114
+ "node": ">=20.0.0",
116
115
  "npm": ">=9.0.0",
117
116
  "pnpm": ">=8.0.0",
118
117
  "yarn": ">=4.0.0"
119
118
  },
119
+ "_comment": "Priority: Latest Node (25+) for latest features. Minimum: Node 20. Older versions tested but may break.",
120
120
  "exports": {
121
121
  ".": {
122
122
  "import": "./index.js",
package/rules.js CHANGED
@@ -285,7 +285,6 @@ export const baseRules = {
285
285
  'no-undef': 'error',
286
286
  'no-undef-init': 'warn',
287
287
  'no-undefined': 'off',
288
- 'no-undefined': 'off',
289
288
  'no-underscore-dangle': 'off',
290
289
 
291
290
  'no-unexpected-multiline': 'error',