{"_id":"@austracode/eslint-config","_rev":"3-4a262a02f9ee7da945cd04da618f29af","name":"@austracode/eslint-config","dist-tags":{"latest":"1.1.0"},"versions":{"1.0.0":{"name":"@austracode/eslint-config","version":"1.0.0","keywords":["eslint","flat","config","typescript","react","nextjs","node"],"author":{"name":"Mathews A."},"license":"MIT","_id":"@austracode/eslint-config@1.0.0","maintainers":[{"name":"mathews_mw","email":"mathews.mw@gmail.com"}],"dist":{"shasum":"857c425f599d5a756f7598feab15807faa27d294","tarball":"https://registry.npmjs.org/@austracode/eslint-config/-/eslint-config-1.0.0.tgz","fileCount":8,"integrity":"sha512-g7eCWo/1VLVg30z0Te0DuPHJzMrSC3lZkWQ5y5K4WR9Zum4BKRifQlDTwisasiZy53jlpEH5XVwPjCFlUZ2tmw==","signatures":[{"sig":"MEYCIQCy9Y3suQ2poZ+YWX78SdvxXGeFUfywGGjN3Ai3wlYpPwIhAJQoHIKJUKasuvuvXfPwzbY9lS7v3yYg/hhqin89n0iY","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10519},"type":"module","engines":{"node":">=18.18"},"exports":{".":"./flat/base.js","./next":"./flat/next.js","./node":"./flat/node.js","./react":"./flat/react.js","./typescript":"./flat/typescript.js"},"_npmUser":{"name":"mathews_mw","email":"mathews.mw@gmail.com"},"_npmVersion":"11.3.0","description":"ESLint Flat Config for Node, React and Next.js with TypeScript","directories":{},"sideEffects":false,"_nodeVersion":"24.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^9.0.0","prettier":"^3.6.2","@types/ws":"^8.18.1","typescript":"^5.0.0","eslint-plugin-n":"^17.17.0","eslint-config-next":"^15.0.0","eslint-plugin-react":"^7.35.0","eslint-plugin-import":"^2.31.0","eslint-plugin-promise":"^7.2.1","eslint-plugin-unicorn":"^55.0.0","eslint-config-prettier":"^10.1.2","eslint-config-standard":"^17.1.0","eslint-plugin-jsx-a11y":"^6.9.0","eslint-plugin-prettier":"^5.2.6","@typescript-eslint/parser":"^8.31.1","eslint-plugin-react-hooks":"^5.0.0","eslint-plugin-react-refresh":"^0.4.10","@typescript-eslint/eslint-plugin":"^8.31.1","eslint-import-resolver-typescript":"^3.6.0"},"peerDependenciesMeta":{"eslint-plugin-n":{"optional":true},"eslint-config-next":{"optional":true},"eslint-plugin-react":{"optional":true},"eslint-plugin-promise":{"optional":true},"eslint-plugin-unicorn":{"optional":true},"eslint-plugin-jsx-a11y":{"optional":true},"eslint-plugin-react-hooks":{"optional":true},"eslint-plugin-react-refresh":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_1.0.0_1761746575184_0.5554640372540827","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@austracode/eslint-config","version":"1.0.1","keywords":["eslint","flat","config","typescript","react","nextjs","node"],"author":{"name":"Mathews A."},"license":"MIT","_id":"@austracode/eslint-config@1.0.1","maintainers":[{"name":"mathews_mw","email":"mathews.mw@gmail.com"}],"dist":{"shasum":"3c4ecaed0002cabb7dfc000df26b5785ad596fac","tarball":"https://registry.npmjs.org/@austracode/eslint-config/-/eslint-config-1.0.1.tgz","fileCount":8,"integrity":"sha512-l6DqYiKZDraAo5kJ80MJ4VIM6GMaCXMxuMVLJS9HDwPUdQDsc6Oi4f8/X2xYKgKJNRVHx3Ax1bF4K9X+RPgDtw==","signatures":[{"sig":"MEYCIQCxUo4gIqSZ9VuBDE1Z4SDeqnVvtWM2YJ1iRYS9itn8GwIhAPfzB6M8vZdP+rMg/VWLqpN3pU+BEjT0pyshz876jbQx","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":10447},"type":"module","_from":"file:austracode-eslint-config-1.0.1.tgz","engines":{"node":">=18.18"},"exports":{".":"./flat/base.js","./next":"./flat/next.js","./node":"./flat/node.js","./react":"./flat/react.js","./typescript":"./flat/typescript.js"},"_npmUser":{"name":"mathews_mw","email":"mathews.mw@gmail.com"},"_resolved":"C:\\Users\\mathe\\AppData\\Local\\Temp\\9949773401617ab74f7733b1902baa95\\austracode-eslint-config-1.0.1.tgz","_integrity":"sha512-l6DqYiKZDraAo5kJ80MJ4VIM6GMaCXMxuMVLJS9HDwPUdQDsc6Oi4f8/X2xYKgKJNRVHx3Ax1bF4K9X+RPgDtw==","_npmVersion":"11.3.0","description":"ESLint Flat Config for Node, React and Next.js with TypeScript","directories":{},"sideEffects":false,"_nodeVersion":"24.1.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"eslint":"^9.0.0","prettier":"^3.6.2","@types/ws":"^8.18.1","typescript":"^5.0.0","eslint-plugin-n":"^17.17.0","eslint-config-next":"^15.0.0","eslint-plugin-react":"^7.35.0","eslint-plugin-import":"^2.31.0","eslint-plugin-promise":"^7.2.1","eslint-plugin-unicorn":"^62.0.0","eslint-config-prettier":"^10.1.2","eslint-config-standard":"^17.1.0","eslint-plugin-jsx-a11y":"^6.9.0","eslint-plugin-prettier":"^5.2.6","@typescript-eslint/parser":"^8.31.1","eslint-plugin-react-hooks":"^5.0.0","eslint-plugin-react-refresh":"^0.4.10","@typescript-eslint/eslint-plugin":"^8.31.1","eslint-import-resolver-typescript":"^3.6.0"},"peerDependenciesMeta":{"eslint-plugin-n":{"optional":true},"eslint-config-next":{"optional":true},"eslint-plugin-react":{"optional":true},"eslint-plugin-promise":{"optional":true},"eslint-plugin-unicorn":{"optional":true},"eslint-plugin-jsx-a11y":{"optional":true},"eslint-plugin-react-hooks":{"optional":true},"eslint-plugin-react-refresh":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/eslint-config_1.0.1_1761758723911_0.02830221467795746","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@austracode/eslint-config","version":"1.1.0","description":"ESLint Flat Config for Node, React and Next.js with TypeScript","license":"MIT","type":"module","exports":{".":"./flat/base.js","./node":"./flat/node.js","./react":"./flat/react.js","./next":"./flat/next.js","./typescript":"./flat/typescript.js"},"keywords":["eslint","flat","config","typescript","react","nextjs","node"],"engines":{"node":">=18.18"},"sideEffects":false,"publishConfig":{"access":"public"},"author":{"name":"Mathews A."},"dependencies":{"@types/ws":"^8.18.1","@typescript-eslint/eslint-plugin":"^8.31.1","@typescript-eslint/parser":"^8.31.1","eslint":"^8.57.1","eslint-config-next":"^15.0.0","eslint-config-prettier":"^10.1.2","eslint-config-standard":"^17.1.0","eslint-import-resolver-typescript":"^3.6.0","eslint-plugin-import":"^2.32.0","eslint-plugin-jsx-a11y":"^6.9.0","eslint-plugin-n":"^17.17.0","eslint-plugin-prettier":"^5.2.6","eslint-plugin-promise":"^7.2.1","eslint-plugin-react":"^7.35.0","eslint-plugin-react-hooks":"^5.0.0","eslint-plugin-react-refresh":"^0.4.10","eslint-plugin-unicorn":"^62.0.0","prettier":"^3.6.2","typescript":"^5.0.0"},"_id":"@austracode/eslint-config@1.1.0","gitHead":"e62283396de4a313ac0cb2096a24054d2846b8a3","_nodeVersion":"24.1.0","_npmVersion":"11.3.0","dist":{"integrity":"sha512-5OifaRq6uBlqK30foB1o8oTpFcvSRKqaNupizZlUO1KzkKq+pz3cwJ+zvWsYyMz083hZ2hOROgDEwK05oCD0uA==","shasum":"c3dcb2625d4a8193ff40887de912b42aa405eb80","tarball":"https://registry.npmjs.org/@austracode/eslint-config/-/eslint-config-1.1.0.tgz","fileCount":8,"unpackedSize":9425,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIAFBlYXpBLhEyLBAeLQZ/k0cvhfuYc3i2g20BYUaTu/cAiEAhK23hLi3DBPEVYGBwL5Zle2ZUsmEx+hsAmu3RuJfpfU="}]},"_npmUser":{"name":"mathews_mw","email":"mathews.mw@gmail.com"},"directories":{},"maintainers":[{"name":"mathews_mw","email":"mathews.mw@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-config_1.1.0_1761759997163_0.18651746130353541"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-29T14:02:55.103Z","modified":"2025-10-29T17:46:37.593Z","1.0.0":"2025-10-29T14:02:55.364Z","1.0.1":"2025-10-29T17:25:24.127Z","1.1.0":"2025-10-29T17:46:37.371Z"},"author":{"name":"Mathews A."},"license":"MIT","keywords":["eslint","flat","config","typescript","react","nextjs","node"],"description":"ESLint Flat Config for Node, React and Next.js with TypeScript","maintainers":[{"name":"mathews_mw","email":"mathews.mw@gmail.com"}],"readme":"# @mw/eslint-config (Flat)\n\n**ESLint ≥ 9** · Presets para **Node**, **React** e **Next.js**, todos com **TypeScript**.\n\n## Instalação (pnpm)\n\nInstale apenas os peers do preset que for usar.\n\n**Base + TypeScript (comum):**\n```bash\npnpm add -D eslint typescript     @typescript-eslint/parser @typescript-eslint/eslint-plugin     eslint-plugin-import eslint-import-resolver-typescript\n```\n\n**Node:**\n```bash\npnpm add -D eslint-plugin-n eslint-plugin-promise eslint-plugin-unicorn\n```\n\n**React:**\n```bash\npnpm add -D eslint-plugin-react eslint-plugin-react-hooks     eslint-plugin-jsx-a11y eslint-plugin-react-refresh\n```\n\n**Next.js:**\n```bash\npnpm add -D eslint-config-next\n```\n\n## Uso\n\n### Node\n`eslint.config.js`\n```js\nimport node from '@mw/eslint-config/node';\nexport default [...node];\n```\n\n### React (Vite/SPA)\n`eslint.config.js`\n```js\nimport react from '@mw/eslint-config/react';\nexport default [...react];\n```\n\n### Next.js\n`eslint.config.js`\n```js\nimport next from '@mw/eslint-config/next';\nexport default [...next];\n```\n\n> Dica (monorepo): em cada pacote/app importe apenas o preset necessário. Se quiser combinar (ex.: libs Node + app web), pode compor:\n```js\nimport node from '@mw/eslint-config/node';\nimport react from '@mw/eslint-config/react';\nexport default [...node, ...react];\n```\n\n## Notas\n- Este pacote usa **Type-Aware Rules**. O parser está configurado com `projectService: true`, então o ESLint usará o **tsconfig** do projeto automaticamente.\n- Para Next, assumimos `eslint-config-next` com suporte ao Flat Config; o preset lida com variações e faz fallback se necessário.\n- Requer Node 18.18+.\n","readmeFilename":"README.md"}