{"_id":"@carlos3g/eslint-config","_rev":"4-82ff596e0318495a44a92ecccefc5348","name":"@carlos3g/eslint-config","dist-tags":{"latest":"0.2.1"},"versions":{"0.0.0":{"name":"@carlos3g/eslint-config","version":"0.0.0","keywords":["eslint","eslint-config","eslint-flat-config","typescript","nestjs","expo","react-native","react"],"author":{"name":"carlos3g"},"license":"MIT","_id":"@carlos3g/eslint-config@0.0.0","maintainers":[{"name":"carlos3g","email":"carlosmesquita156@gmail.com"}],"homepage":"https://github.com/carlos3g/code-style#readme","bugs":{"url":"https://github.com/carlos3g/code-style/issues"},"dist":{"shasum":"264e41eb215f88e42b3ccfad765ee97a2563775b","tarball":"https://registry.npmjs.org/@carlos3g/eslint-config/-/eslint-config-0.0.0.tgz","fileCount":10,"integrity":"sha512-ePbNgwKoVqhhACCXZq2CU9SEhT1pIf79PQu+N1IUGGQxlkvkDMTNPrC1TTyZBlKeaLeQAx2NDneXkRG4HWUc/A==","signatures":[{"sig":"MEQCIGx/YE8mDacr5ReAEosYW4hk8Y0tseJQV4szzOHCSDv6AiBIfvfOpzUfOZbBljh6WT5Y2+J1xQVRBwUpzVVlYYJrkQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":20605},"type":"module","engines":{"node":">=20.0.0"},"exports":{".":"./src/index.mjs","./base":"./src/base.mjs","./expo":"./src/expo.mjs","./jest":"./src/jest.mjs","./nest":"./src/nest.mjs","./react":"./src/react.mjs","./prettier":"./src/prettier.mjs"},"gitHead":"351218dd6827291ff9324d56fda187aaa507f164","scripts":{"lint":"eslint .","check":"node --check src/*.mjs","format":"prettier --write ."},"_npmUser":{"name":"carlos3g","email":"carlosmesquita156@gmail.com"},"repository":{"url":"git+https://github.com/carlos3g/code-style.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared ESLint flat-config presets for TypeScript, NestJS and Expo/React Native projects","directories":{},"_nodeVersion":"24.11.1","dependencies":{"globals":"^17.4.0","@eslint/js":"^9.0.0","typescript-eslint":"^8.57.2","eslint-plugin-jest":"^29.15.1","eslint-plugin-react":"^7.37.5","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","eslint-plugin-react-hooks":"^7.0.1","@tanstack/eslint-plugin-query":"^5.95.2","eslint-plugin-testing-library":"^7.16.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@4.7.0","devDependencies":{"eslint":"^9.0.0","prettier":"^3.8.1","typescript":"^5.6.0"},"peerDependencies":{"eslint":"^9.0.0","typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.0.0_1777192474081_0.951340727766443","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@carlos3g/eslint-config","version":"0.1.1","keywords":["eslint","eslint-config","eslint-flat-config","typescript","nestjs","expo","react-native","react"],"author":{"name":"carlos3g"},"license":"MIT","_id":"@carlos3g/eslint-config@0.1.1","maintainers":[{"name":"carlos3g","email":"carlosmesquita156@gmail.com"}],"homepage":"https://github.com/carlos3g/code-style#readme","bugs":{"url":"https://github.com/carlos3g/code-style/issues"},"dist":{"shasum":"d6eba74591715092ecaa3e88f00a37f741f3b3c6","tarball":"https://registry.npmjs.org/@carlos3g/eslint-config/-/eslint-config-0.1.1.tgz","fileCount":10,"integrity":"sha512-uKhSqbu9PGmj+hEBzhNzjOeUzHqHJfm6cnUfq/xNKe4LsSIGHxqlBcPIl8ETfWE7ylBvlmVi22iFaF6jdu/y3g==","signatures":[{"sig":"MEQCIQCD92BZZv5ObGdensGN2tq2vMTi6jmg6CMvivvg3vkZ1wIfMejAMgxu+GttY9e8D3SZffmQlAqG2D8sG/hBLPZjGw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@carlos3g%2feslint-config@0.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20739},"type":"module","engines":{"node":">=20.0.0"},"exports":{".":"./src/index.mjs","./base":"./src/base.mjs","./expo":"./src/expo.mjs","./jest":"./src/jest.mjs","./nest":"./src/nest.mjs","./react":"./src/react.mjs","./prettier":"./src/prettier.mjs"},"gitHead":"d6173271846a9fac2267ccdbe7fea62f9110527e","scripts":{"lint":"eslint .","check":"node --check src/*.mjs","format":"prettier --write ."},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6952b3ec-103e-41d0-b0bc-8e64564eb10e"}},"repository":{"url":"git+https://github.com/carlos3g/code-style.git","type":"git"},"_npmVersion":"11.11.0","description":"Shared ESLint flat-config presets for TypeScript, NestJS and Expo/React Native projects","directories":{},"_nodeVersion":"24.14.1","dependencies":{"globals":"^17.4.0","@eslint/js":"^9.0.0","typescript-eslint":"^8.57.2","eslint-plugin-jest":"^29.15.1","eslint-plugin-react":"^7.37.5","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","eslint-plugin-react-hooks":"^7.0.1","@tanstack/eslint-plugin-query":"^5.95.2","eslint-plugin-testing-library":"^7.16.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@4.7.0","devDependencies":{"eslint":"^9.0.0","prettier":"^3.8.1","typescript":"^5.6.0"},"peerDependencies":{"eslint":"^9.0.0","typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.1.1_1777194254458_0.9842503083649774","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@carlos3g/eslint-config","version":"0.2.0","keywords":["eslint","eslint-config","eslint-flat-config","typescript","nestjs","expo","react-native","react"],"author":{"name":"carlos3g"},"license":"MIT","_id":"@carlos3g/eslint-config@0.2.0","maintainers":[{"name":"carlos3g","email":"carlosmesquita156@gmail.com"}],"homepage":"https://github.com/carlos3g/code-style#readme","bugs":{"url":"https://github.com/carlos3g/code-style/issues"},"dist":{"shasum":"adc26c325e6c1c6ea07d57102adc911da68efcf4","tarball":"https://registry.npmjs.org/@carlos3g/eslint-config/-/eslint-config-0.2.0.tgz","fileCount":10,"integrity":"sha512-XlZi9gQz9UNIPpYm+9vUj9e4NbVIHg8H0EMgTeCLR47jE2n5lOgIjzR59uScxQZ9azqDTyBoJjMXhkOB/s/LaA==","signatures":[{"sig":"MEUCIC2uBRrMfGNEwNsXUtKU16VKiwakdUyQrVU5lGgikxinAiEAywFENRLOxPIcv4eWawOqq+Tf0ySO8JQJqUbIdPK4QVA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@carlos3g%2feslint-config@0.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":20832},"type":"module","engines":{"node":">=20.0.0"},"exports":{".":"./src/index.mjs","./base":"./src/base.mjs","./expo":"./src/expo.mjs","./jest":"./src/jest.mjs","./nest":"./src/nest.mjs","./react":"./src/react.mjs","./prettier":"./src/prettier.mjs"},"gitHead":"f5b89ca6591747b3247f873945a009f096c01b9e","scripts":{"lint":"eslint .","test":"node test/smoke.mjs","check":"node --check src/*.mjs","format":"prettier --write ."},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:6952b3ec-103e-41d0-b0bc-8e64564eb10e"}},"repository":{"url":"git+https://github.com/carlos3g/code-style.git","type":"git"},"_npmVersion":"11.12.1","description":"Shared ESLint flat-config presets for TypeScript, NestJS and Expo/React Native projects","directories":{},"_nodeVersion":"24.15.0","dependencies":{"globals":"^17.4.0","@eslint/js":"^9.0.0","typescript-eslint":"^8.57.2","eslint-plugin-jest":"^29.15.1","eslint-plugin-react":"^7.37.5","eslint-config-prettier":"^10.1.8","eslint-plugin-prettier":"^5.5.5","eslint-plugin-react-hooks":"^7.0.1","@tanstack/eslint-plugin-query":"^5.95.2","eslint-plugin-testing-library":"^7.16.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"packageManager":"yarn@4.7.0","devDependencies":{"eslint":"^9.0.0","prettier":"^3.8.1","typescript":"^5.6.0"},"peerDependencies":{"eslint":"^9.0.0","typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_0.2.0_1779256692532_0.6970348791545322","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"@carlos3g/eslint-config","version":"0.2.1","description":"Shared ESLint flat-config presets for TypeScript, NestJS and Expo/React Native projects","keywords":["eslint","eslint-config","eslint-flat-config","typescript","nestjs","expo","react-native","react"],"homepage":"https://github.com/carlos3g/code-style/tree/main/packages/eslint-config#readme","bugs":{"url":"https://github.com/carlos3g/code-style/issues"},"repository":{"type":"git","url":"git+https://github.com/carlos3g/code-style.git","directory":"packages/eslint-config"},"license":"MIT","author":{"name":"carlos3g"},"type":"module","exports":{".":"./src/index.mjs","./base":"./src/base.mjs","./nest":"./src/nest.mjs","./expo":"./src/expo.mjs","./react":"./src/react.mjs","./jest":"./src/jest.mjs","./prettier":"./src/prettier.mjs"},"scripts":{"check":"node --check src/*.mjs","test":"node test/smoke.mjs"},"dependencies":{"@eslint/js":"^9.0.0","@tanstack/eslint-plugin-query":"^5.95.2","eslint-config-prettier":"^10.1.8","eslint-plugin-jest":"^29.15.1","eslint-plugin-prettier":"^5.5.5","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-testing-library":"^7.16.2","globals":"^17.4.0","typescript-eslint":"^8.57.2"},"devDependencies":{"eslint":"^9.0.0","prettier":"^3.8.1","typescript":"^5.6.0"},"peerDependencies":{"eslint":"^9.0.0","typescript":"^5.0.0"},"peerDependenciesMeta":{"typescript":{"optional":true}},"publishConfig":{"access":"public"},"engines":{"node":">=20.0.0"},"gitHead":"f5467e7a2b0a1fe44a39e82ded3d3b17ed7cdabd","_id":"@carlos3g/eslint-config@0.2.1","_nodeVersion":"24.11.1","_npmVersion":"11.12.1","dist":{"integrity":"sha512-FQDfyKCEyaSrkIcYxNL4w4aYKxJ5IPXFFurHc8YY35SRtQ7pJXkjTaxHLL8uuf69olx0QgRfSD/W3GScUL7OHQ==","shasum":"9390e6b64dd06a03b61e6cebfc80a0e4e056528c","tarball":"https://registry.npmjs.org/@carlos3g/eslint-config/-/eslint-config-0.2.1.tgz","fileCount":10,"unpackedSize":11943,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIGNgqSU+0rjvmlohpm3mncfReCfd2Bu0Uz7O5PYvgcJkAiArgJEaiwfWNRTtFoAqjA6ro8yftBlyRu8moyjZCUvdOA=="}]},"_npmUser":{"name":"carlos3g","email":"carlosmesquita156@gmail.com"},"directories":{},"maintainers":[{"name":"carlos3g","email":"carlosmesquita156@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-config_0.2.1_1779331437603_0.907659988690867"},"_hasShrinkwrap":false}},"time":{"created":"2026-04-26T08:34:33.950Z","modified":"2026-05-21T02:43:57.898Z","0.0.0":"2026-04-26T08:34:34.239Z","0.1.1":"2026-04-26T09:04:14.593Z","0.2.0":"2026-05-20T05:58:12.696Z","0.2.1":"2026-05-21T02:43:57.763Z"},"bugs":{"url":"https://github.com/carlos3g/code-style/issues"},"author":{"name":"carlos3g"},"license":"MIT","homepage":"https://github.com/carlos3g/code-style/tree/main/packages/eslint-config#readme","keywords":["eslint","eslint-config","eslint-flat-config","typescript","nestjs","expo","react-native","react"],"repository":{"type":"git","url":"git+https://github.com/carlos3g/code-style.git","directory":"packages/eslint-config"},"description":"Shared ESLint flat-config presets for TypeScript, NestJS and Expo/React Native projects","maintainers":[{"name":"carlos3g","email":"carlosmesquita156@gmail.com"}],"readme":"# @carlos3g/eslint-config\n\nComposable ESLint flat-config presets for TypeScript, NestJS, React and Expo —\nthe linting half of [carlos3g's code style](https://github.com/carlos3g/code-style).\n\nInstall once, pick the preset that matches the stack.\n\n```bash\nyarn add -D @carlos3g/eslint-config eslint typescript\n```\n\n```js\n// eslint.config.mjs — NestJS API\nimport nest from '@carlos3g/eslint-config/nest';\nexport default nest;\n```\n\n```js\n// eslint.config.mjs — Expo / React Native\nimport expo from '@carlos3g/eslint-config/expo';\nexport default expo;\n```\n\n## Presets\n\nEach preset is a flat-config array.\n\n| Subpath                            | Use for                                                    |\n| ---------------------------------- | ---------------------------------------------------------- |\n| `@carlos3g/eslint-config/base`     | Any TypeScript project — TS rules + sensible defaults      |\n| `@carlos3g/eslint-config/nest`     | NestJS APIs — base + jest layer + Prettier                 |\n| `@carlos3g/eslint-config/expo`     | Expo / React Native — base + react + tanstack-query + RTL  |\n| `@carlos3g/eslint-config/react`    | React (web) — base + react + react-hooks + Prettier        |\n| `@carlos3g/eslint-config/jest`     | Jest add-on for spec/e2e files                             |\n| `@carlos3g/eslint-config/prettier` | Prettier integration (always last when composing manually) |\n\n`base` is the foundation: `eslint:recommended` + typescript-eslint\n`strictTypeChecked`. The `nest`, `react` and `expo` presets already include\n`base` and Prettier — pick exactly one, never compose `base` + a stack preset\nmanually. `jest` and `prettier` are composable add-ons; `prettier` must always\ncome **last** so it can disable conflicting stylistic rules.\n\n## Composing manually\n\n```js\nimport { base, jest, prettier } from '@carlos3g/eslint-config';\nimport tseslint from 'typescript-eslint';\n\nexport default tseslint.config(\n  ...base,\n  ...jest,\n  {\n    rules: {\n      /* project overrides */\n    },\n  },\n  ...prettier\n);\n```\n\n## License\n\nMIT © carlos3g\n","readmeFilename":"README.md"}