@aristobyte-ui/eslint-config 2.6.2 β†’ 2.8.1

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 (2) hide show
  1. package/README.md +115 -0
  2. package/package.json +1 -1
package/README.md ADDED
@@ -0,0 +1,115 @@
1
+ # `@aristobyte-ui/eslint-config`
2
+
3
+ <p align="center">
4
+ <img src="https://img.shields.io/badge/TypeScript-5.8-blue?style=for-the-badge&logo=typescript&logoColor=white" alt="TypeScript" />
5
+ <img src="https://img.shields.io/badge/ESLint-9.x-red?style=for-the-badge&logo=eslint&logoColor=white" alt="ESLint" />
6
+ <img src="https://img.shields.io/badge/Config-Prettier-1A2C34?style=for-the-badge&logo=prettier&logoColor=F7BA3E" alt="Prettier" />
7
+ <img src="https://img.shields.io/badge/React-Supported-61DAFB?style=for-the-badge&logo=react&logoColor=white" alt="React Support" />
8
+ <img src="https://img.shields.io/badge/Next.js-Supported-000000?style=for-the-badge&logo=nextdotjs&logoColor=white" alt="Next.js Support" />
9
+ <img src="https://img.shields.io/badge/TurboRepo-Optimized-00A3E0?style=for-the-badge&logo=turbo&logoColor=white" alt="TurboRepo" />
10
+ <img src="https://img.shields.io/badge/License-MIT-black?style=for-the-badge&logo=open-source-initiative&logoColor=white" alt="License" />
11
+ <img src="https://img.shields.io/badge/Node-20.17.0+-339933?style=for-the-badge&logo=node.js&logoColor=white" alt="Node.js >=20.17.0" />
12
+ <img src="https://img.shields.io/badge/Yarn-1.22+-2C8EBB?style=for-the-badge&logo=yarn&logoColor=white" alt="Yarn >=1.22" />
13
+ <img src="https://img.shields.io/badge/NPM-10.8+-CB3837?style=for-the-badge&logo=npm&logoColor=white" alt="NPM >=10.8" />
14
+ </p>
15
+
16
+ Centralized **ESLint configuration presets** for AristoByte UI packages.
17
+ Provides **base**, **React**, and **Next.js** linting standards with TypeScript-first principles.
18
+
19
+ ## πŸ“¦ Installation
20
+
21
+ ```bash
22
+ # Install via Yarn
23
+ yarn add -D @aristobyte-ui/eslint-config
24
+
25
+ # Or via npm
26
+ npm install -D @aristobyte-ui/eslint-config
27
+
28
+ # Or via pnpm
29
+ pnpm add -D @aristobyte-ui/eslint-config
30
+ ```
31
+
32
+ ## πŸ›  Usage
33
+
34
+ Extend one of the provided configs in your `eslint.config.js` (Flat Config):
35
+
36
+ **Base (TypeScript + general rules):**
37
+
38
+ ```js
39
+ import { config } from '@aristobyte-ui/eslint-config/base';
40
+ export default config;
41
+ ```
42
+
43
+ **React (includes React + Hooks best practices):**
44
+
45
+ ```js
46
+ import { config } from '@aristobyte-ui/eslint-config/react';
47
+ export default config;
48
+ ```
49
+
50
+ **Next.js (includes React + Next.js rules):**
51
+
52
+ ```js
53
+ import { nextJsConfig } from '@aristobyte-ui/eslint-config/next';
54
+ export default nextJsConfig;
55
+ ```
56
+
57
+ ## πŸ“‚ Presets Available
58
+
59
+ - `base` β†’ Core TypeScript + Prettier + TurboRepo rules.
60
+ - `react` β†’ Extends base with React + React Hooks recommendations.
61
+ - `next` β†’ Extends base with Next.js & Core Web Vitals rules.
62
+
63
+ ## πŸ”§ Example in a Package
64
+
65
+ ```json
66
+ {
67
+ "name": "@aristobyte-ui/button",
68
+ "version": "1.0.0",
69
+ "scripts": {
70
+ "lint": "eslint ."
71
+ },
72
+ "devDependencies": {
73
+ "@aristobyte-ui/eslint-config": "2.0.0",
74
+ "eslint": "^9.0.0"
75
+ }
76
+ }
77
+ ```
78
+
79
+ And `eslint.config.js:`
80
+
81
+ ```js
82
+ import { config } from '@aristobyte-ui/eslint-config/react';
83
+ export default config;
84
+ ```
85
+
86
+ ## πŸ“Š Why This Matters
87
+
88
+ | Feature | Benefit |
89
+ | ----------------------- | ------------------------------------------- |
90
+ | Flat Config (ESLint 9) | Modern, future-proof linting structure |
91
+ | TypeScript support | Type-aware linting for safer codebases |
92
+ | Prettier integration | Automatic formatting alignment |
93
+ | React & Hooks rules | Enforces idiomatic React code |
94
+ | Next.js core-web-vitals | Ensures optimal Next.js app performance |
95
+ | TurboRepo plugin | Catches misconfigured env vars in monorepos |
96
+
97
+ ## πŸ† Philosophy
98
+
99
+ At **AristoByte**, linting is not just about **style** β€” it’s about **preventing bugs, scaling teams, and enforcing architectural patterns**.
100
+ This config empowers developers with **out-of-the-box rules** that evolve alongside the ecosystem.
101
+
102
+ ## πŸ“œ License
103
+
104
+ [MIT](./LICENSE) Β© AristoByte
105
+
106
+ ## πŸ›‘ Shields Showcase
107
+
108
+ <p align="center">
109
+ <img src="https://img.shields.io/badge/Consistency-100%25-green?style=for-the-badge&logo=eslint" />
110
+ <img src="https://img.shields.io/badge/Maintained-Active-brightgreen?style=for-the-badge&logo=github" />
111
+ <img src="https://img.shields.io/badge/Prettier-Integrated-ff69b4?style=for-the-badge&logo=prettier" />
112
+ <img src="https://img.shields.io/badge/React-Hooks-optimized?style=for-the-badge&logo=react" />
113
+ <img src="https://img.shields.io/badge/Next.js-Core%20Web%20Vitals-black?style=for-the-badge&logo=nextdotjs" />
114
+ <img src="https://img.shields.io/badge/TurboRepo-Ready-blue?style=for-the-badge&logo=turbo" />
115
+ </p>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aristobyte-ui/eslint-config",
3
3
  "description": "AristoByteUI ESLint configuration presets for TypeScript, React, and Next.js packages. Provides base, React, and Next.js rules optimized for monorepo workflows, Prettier integration, and developer productivity.",
4
- "version": "2.6.2",
4
+ "version": "2.8.1",
5
5
  "private": false,
6
6
  "license": "MIT",
7
7
  "type": "module",