{"_id":"@caspeco/eslint-config-react","_rev":"14-b2bf99a22ed4417ef43844c1eaa83e49","name":"@caspeco/eslint-config-react","dist-tags":{"next":"5.0.1-beta.2","latest":"5.4.2"},"versions":{"5.0.0-beta.0":{"name":"@caspeco/eslint-config-react","version":"5.0.0-beta.0","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.0.0-beta.0","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"9c48cfc9cd27df9155ee63658f8562e1807ff985","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.0.0-beta.0.tgz","fileCount":6,"integrity":"sha512-GarpgsX83NQFWx5+lrVCi6LDiWnGWo9VY6VjUTZdHcwaeylBcVzF5aHAsbfUCDsVuvdMZYtAlquTI/kEmzuGOQ==","signatures":[{"sig":"MEYCIQCjqVspT1D1MVHphg7rbWARJZzz0vL5Z2Spgu90ucNNPAIhAIRrYpPgc7ebd5Yo4vVJiGBI3t4DRqxyDSRE5nZc4cyl","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13555},"main":"src/index.js","type":"module","engines":{"npm":">=11.5.1","node":">=24"},"gitHead":"6a084af6ad051f1a433de0c8f8f55946223fe097","scripts":{"test":"vitest"},"_npmUser":{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"10.9.2","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"23.7.0","dependencies":{"@caspeco/eslint-config-ts":"*"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.0.0-beta.0_1762853407070_0.4883860383590839","host":"s3://npm-registry-packages-npm-production"}},"5.0.0-beta.1":{"name":"@caspeco/eslint-config-react","version":"5.0.0-beta.1","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.0.0-beta.1","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"49d33853ba1ce7693eb43ef6014014abff8e0762","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.0.0-beta.1.tgz","fileCount":6,"integrity":"sha512-kZoa/Ga2hi4RHUEOx2M8Z0XZcVkoCulxGgfrwXHsKDCF+M2Ls0GIYUrTiSbLJW8VZ7GFsau2jC6TpI8PbmzZhg==","signatures":[{"sig":"MEYCIQC9gXKqzkgqOS1vu1F+DD8eLskbCQvIgypJkNPv2TpFYwIhAPbVLFlUhLtYSlkRB9S2wEUhnVGQWJM+GceYo1+aDHwM","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13566},"main":"src/index.js","type":"module","engines":{"npm":">=11.5.1","node":">=24"},"gitHead":"6a084af6ad051f1a433de0c8f8f55946223fe097","scripts":{"test":"vitest"},"_npmUser":{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"10.9.2","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"23.7.0","dependencies":{"@caspeco/eslint-config-ts":"5.0.0-beta.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.0.0-beta.1_1762853885340_0.06398474220551997","host":"s3://npm-registry-packages-npm-production"}},"5.0.0":{"name":"@caspeco/eslint-config-react","version":"5.0.0","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.0.0","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"e49491a44bad6e9355775c89167bf033989609e1","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.0.0.tgz","fileCount":6,"integrity":"sha512-28hqAHV1+tQNSr7AKW1m6HMzAyBHbQ5XlJEdMgclHg2wzMT1Pqw02asZwQqBhjpj+D6RG7XIlsvWKv+TV9IsOA==","signatures":[{"sig":"MEQCIC2W4K77rEq11Qq1W4nILEK3NTFmpwgwilJgNWYya4z8AiBHowWJMoHUCjCecPGcOy0vfSjNRIZMWTHpDagYJU0i3A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":14053},"main":"src/index.js","type":"module","gitHead":"31af3c94bce72b9e29720971d6f63fb4ccd47f0b","scripts":{"test":"vitest"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.6.1","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.11.0","dependencies":{"@caspeco/eslint-config-ts":"5.0.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.0.0_1762864146365_0.2421738622295131","host":"s3://npm-registry-packages-npm-production"}},"5.0.1-beta.1":{"name":"@caspeco/eslint-config-react","version":"5.0.1-beta.1","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.0.1-beta.1","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"c3a37ee4d45458a9031fef9bbf31676a8b6890c9","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.0.1-beta.1.tgz","fileCount":6,"integrity":"sha512-YzTm5zR5l23VxMfWaia77GPDlcNSEw/zcUuDgzvDPgG9IEAkFbV/XOz4aj4l2p3L0TLTnjjGshFTGoH3IlsGIQ==","signatures":[{"sig":"MEQCIF5ljKnCy7zRyFfi2VgaB2y5HOkxz7cCnPOWlotGD0+kAiBmaqu/3GnrYJmPOzM0GnhSAmXM3Kw65Z24APJ62m6Oxw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14590},"main":"src/index.js","type":"module","engines":{"npm":">=11.5.1","node":">=24"},"gitHead":"6def0ad70a19d79af85413375518a250054d809b","scripts":{"test":"vitest"},"_npmUser":{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.3.0","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.0.2","dependencies":{"@caspeco/eslint-config-ts":"5.0.1-beta.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.0.1-beta.1_1763376032271_0.09391323152632935","host":"s3://npm-registry-packages-npm-production"}},"5.0.1-beta.2":{"name":"@caspeco/eslint-config-react","version":"5.0.1-beta.2","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.0.1-beta.2","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"5be1868d996a60df12d4c47207817d515336e711","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.0.1-beta.2.tgz","fileCount":10,"integrity":"sha512-xnAagJgZxnE6quF643cafDbiow59Sao4Bpm2a8jzvnYUwfEo8iMlI1SN+iULMHQWUlXOMFfO8hnszlteo9++6A==","signatures":[{"sig":"MEUCIHIUZUKrnwiqx7UHL5vtyE4e+mhhIcH+MLXXMt3I2qcgAiEA0ETVbD1E2dmwgQAcZXjrJt8s1C7+Rfe6EfJeqROeWZg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":15251},"main":"src/index.js","type":"module","types":"dist/index.d.ts","engines":{"npm":">=11.5.1","node":">=24"},"gitHead":"cd1ea6a2f6e329eedf8e6be236f046fe5b458b63","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","prepublishOnly":"npm run build"},"_npmUser":{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.6.2","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@caspeco/eslint-config-ts":"5.0.1-beta.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.0.1-beta.2_1763976329363_0.7642737471143484","host":"s3://npm-registry-packages-npm-production"}},"5.0.1":{"name":"@caspeco/eslint-config-react","version":"5.0.1","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.0.1","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"ac00a89d3846a8fdca4c213cb32e857f1e45c9ca","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.0.1.tgz","fileCount":6,"integrity":"sha512-MmAlx2q6qtmXs6MQrXjE8cemkQQCCP+v1fmIoC9F/j3TPdDeQjUTr6qfR1a/nXXAFpRz13tG7SNBrPc9HnOAZg==","signatures":[{"sig":"MEYCIQC1BWzcMn/OQAqtQahU9dtEiILNiwcC9ulMGoLoSz9p8gIhALIqZQ7Y0jy4MtywAB2i2R2kZMGv4Oc1s8e99bEGMLSp","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":14246},"main":"src/index.js","type":"module","types":"dist/index.d.ts","gitHead":"20c477822407e8776ec2c7309f4d398313d5ab0e","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.6.2","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@caspeco/eslint-config-ts":"5.0.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.0.1_1763979017766_0.1348682215910908","host":"s3://npm-registry-packages-npm-production"}},"5.0.2":{"name":"@caspeco/eslint-config-react","version":"5.0.2","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.0.2","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"1acf5a359a72f4fa7eaca77ba0ce28194568eddb","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.0.2.tgz","fileCount":10,"integrity":"sha512-z8hd7sJLZ5OxJclLoqHfB7Dvj7s0zgi8BOZAHB8GHURdD1kGC9JBHtpDRSe1SxCMyhO9eXQ2LbEKIjfbGse3Rg==","signatures":[{"sig":"MEQCIBnkEEiujN3frIxrAl5oVOuc+ylq5ApNkchHoCccNzj4AiBpB8dqBoOYPimA4m3WSLTaceQfgag/trTRmJyl9OpSjw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15250},"main":"src/index.js","type":"module","types":"dist/index.d.ts","gitHead":"cbee71c239f3ba3c0f5a1dc504fbd0d17d3d5ae2","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.6.2","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@caspeco/eslint-config-ts":"5.0.2"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.0.2_1763998408394_0.20332905294466785","host":"s3://npm-registry-packages-npm-production"}},"5.1.0":{"name":"@caspeco/eslint-config-react","version":"5.1.0","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.1.0","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"9bfab788d659d83784cfcc6a3390ee0b5f71bd2e","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.1.0.tgz","fileCount":10,"integrity":"sha512-YRQJi5HAq7xhMc8W18PpkaIWjO3ITsC16grmRPw0AKK416XT9u6KdDDAodT1sVp0kDjytUkDWIIISgJqq5Z5hg==","signatures":[{"sig":"MEUCIB9s2r1sBAagpZXZ3tSOb9VKts7YxFk9VqeTkVbCnR4EAiEAhROuO6YX1AC6QZamoxQprwMvgDmnDAa1LpTVh3Nvg+Q=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15250},"main":"src/index.js","type":"module","types":"dist/index.d.ts","gitHead":"82530a24866f6cbfb3c86630cdb67a90c36fd43a","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.6.2","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.11.1","dependencies":{"@caspeco/eslint-config-ts":"5.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@caspeco/test-utils":"*"},"peerDependencies":{"eslint":">=9","globals":">=15","eslint-plugin-react":">=7.37.0","eslint-plugin-react-hooks":">=7","eslint-plugin-react-refresh":">=0.4.0"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.1.0_1765442953635_0.1152805599675526","host":"s3://npm-registry-packages-npm-production"}},"5.2.0":{"name":"@caspeco/eslint-config-react","version":"5.2.0","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.2.0","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"f671d9918dd18b4efcc9b4d019035d2958b3493f","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.2.0.tgz","fileCount":10,"integrity":"sha512-PIxVxvK6/tvqh6htO+fQEYN2rHIYS3pcxKIu58K0M6Ml7d/7w8GrpevfsAWkLaxpsGGNdc6+DNhI1sWNBcu9sA==","signatures":[{"sig":"MEQCIGxRL60AaDycOd27pUIQDL/fZQRXEbKrTrNSl6im7tIDAiB9hyDXk/YJrJzwhFB5UWkGujQq5AUgvQOGgtmTXoAGNA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15425},"main":"src/index.js","type":"module","types":"dist/index.d.ts","gitHead":"bd79d0133a84f1bdd0fbd879df134fdb855f6284","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.11.0","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@caspeco/eslint-config-ts":"5.2.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.4","globals":"^17.5.0","@caspeco/test-utils":"*","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"eslint":"^9.39.4","globals":"^17.4.0","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.2.0_1777364819067_0.6587365797922597","host":"s3://npm-registry-packages-npm-production"}},"5.2.1":{"name":"@caspeco/eslint-config-react","version":"5.2.1","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.2.1","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"6af00b2cbaff7ae2fe39780c8a4aa0048c7a34b1","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.2.1.tgz","fileCount":10,"integrity":"sha512-rfqMSOz5WZCysyZawsKJNO5pCn1UBHFWiu62U9m5I9RHoYAW1/7Og0u8SUtTUJzRlIOCKl0lLc2RBt12dDcvXw==","signatures":[{"sig":"MEQCIFAjS5zxCqor8wXFmADD44dpTh9X394DMmM7TW4HFdQ1AiBOJ6Dl4iwYVAe//Ep1MqW7fuzJL5QlVsC+UmzFUaTawQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":15324},"main":"src/index.js","type":"module","types":"dist/index.d.ts","gitHead":"91c66ba99c83240001354030d0a3bba7719c3756","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.11.0","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.14.1","dependencies":{"@caspeco/eslint-config-ts":"5.2.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.4","globals":"^17.5.0","@caspeco/test-utils":"*","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"eslint":"^9.39.4","globals":"^17.4.0","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.2.1_1777459238591_0.8463664150716861","host":"s3://npm-registry-packages-npm-production"}},"5.3.0":{"name":"@caspeco/eslint-config-react","version":"5.3.0","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.3.0","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"9188cdc84f99ca0062b017fd19d9d0f038701366","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.3.0.tgz","fileCount":16,"integrity":"sha512-Zus5zC5uT+Zy+EofGpjV3WBQq1Msg2modZiPHESqS1CgjLprCTlImvHHi8fYzrFSWQTXwPsedvVeqYjfC7tsUg==","signatures":[{"sig":"MEUCIQDQJC/1yOJRIUiCTbwnKl1hWuvw/VGnXqdK92f6VdN7zQIgKFEcH6HY+H/jnxvMaVqCUrO550gd3hQ3vSV/skzxS9w=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":18066},"main":"src/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./src/index.js"},"./compiler":{"types":"./dist/compiler.d.ts","default":"./src/compiler.js"},"./package.json":"./package.json"},"gitHead":"dc3ce77c449954850a25e8135feb13627b54d719","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm --profile node16","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.13.0","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.16.0","dependencies":{"@caspeco/eslint-config-ts":"5.3.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.4","globals":"^17.5.0","@caspeco/test-utils":"*","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"eslint":"^9.39.4","globals":"^17.4.0","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.3.0_1781611991517_0.35502537709793525","host":"s3://npm-registry-packages-npm-production"}},"5.4.0":{"name":"@caspeco/eslint-config-react","version":"5.4.0","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.4.0","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"9e9fa9ab6921afbdeb33ba5499091f209ae57f6e","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.4.0.tgz","fileCount":16,"integrity":"sha512-DRIRHxPisaDwlkLUCJ77xvlRNsgzUtHbUQXVLxuTiC1dVObF7Q4Nr7Q3aylGKHhAB7dvKrlkeovwjVzGuugQjg==","signatures":[{"sig":"MEQCIBbR6xW3RldrEnewrTF53l2FtaBYBSKDdlCmogjbkK8jAiBkiBFPqUpN3TmdeAwiE5Nd9GnJPsRaU6jqz4a3VPt7FA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":18066},"main":"src/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./src/index.js"},"./compiler":{"types":"./dist/compiler.d.ts","default":"./src/compiler.js"},"./package.json":"./package.json"},"gitHead":"1887055a9f91bd057f08ad541095e071a8d6d8e0","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm --profile node16","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.16.0","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@caspeco/eslint-config-ts":"5.4.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.4","globals":"^17.5.0","@caspeco/test-utils":"*","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"eslint":"^9.39.4","globals":"^17.4.0","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.4.0_1783603866160_0.9555880880818848","host":"s3://npm-registry-packages-npm-production"}},"5.4.1":{"name":"@caspeco/eslint-config-react","version":"5.4.1","keywords":["eslint","eslint-config","react","typescript","caspeco"],"license":"MIT","_id":"@caspeco/eslint-config-react@5.4.1","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"dist":{"shasum":"149db79ed3d7ae2c925e6e8cdc567058ddf0172a","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.4.1.tgz","fileCount":16,"integrity":"sha512-brVr6DfAFCHOYl3qUEM7lkLR3TGDkzV0hyhX/ZT+ITDSu+5N632RjOJlXDZsaBeLdOxKYhKnC7aMIc6snAu/jg==","signatures":[{"sig":"MEQCIB0tWSQP2BV4vzbdIqw7rfYE21jD2AWYErNlj/Yv3acsAiAwcakIWQ+JT5Bz4XxTXkWYasNci9VtsA4UFz6DFhXuCA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":18066},"main":"src/index.js","type":"module","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","default":"./src/index.js"},"./compiler":{"types":"./dist/compiler.d.ts","default":"./src/compiler.js"},"./package.json":"./package.json"},"gitHead":"e7c241ee3aca9e4d5bc0ee1bbf44a8face236f75","scripts":{"test":"vitest","build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm --profile node16","prepublishOnly":"npm run build"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"repository":{"url":"git+https://github.com/Caspeco/eslint-config.git","type":"git","directory":"packages/eslint-config-react"},"_npmVersion":"11.16.0","description":"Caspeco ESLint configuration for React projects","directories":{},"_nodeVersion":"24.18.0","dependencies":{"@caspeco/eslint-config-ts":"5.4.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"^9.39.4","globals":"^17.5.0","@caspeco/test-utils":"*","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-refresh":"^0.5.2"},"peerDependencies":{"eslint":"^9.39.4","globals":"^17.4.0","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.2"},"_npmOperationalInternal":{"tmp":"tmp/eslint-config-react_5.4.1_1783675053564_0.5313629233383881","host":"s3://npm-registry-packages-npm-production"}},"5.4.2":{"name":"@caspeco/eslint-config-react","version":"5.4.2","description":"Caspeco ESLint configuration for React projects","keywords":["eslint","eslint-config","react","typescript","caspeco"],"homepage":"https://github.com/Caspeco/eslint-config#readme","bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"repository":{"type":"git","url":"git+https://github.com/Caspeco/eslint-config.git","directory":"packages/eslint-config-react"},"license":"MIT","type":"module","exports":{".":{"types":"./dist/index.d.ts","default":"./src/index.js"},"./compiler":{"types":"./dist/compiler.d.ts","default":"./src/compiler.js"},"./package.json":"./package.json"},"main":"src/index.js","types":"dist/index.d.ts","bin":{"caspeco-react-migrate-v5":"bin/caspeco-react-migrate-v5.js"},"scripts":{"build":"tsc --project tsconfig.build.json","check:types":"attw --pack . --ignore-rules=cjs-resolves-to-esm --profile node16","prepublishOnly":"npm run build","test":"vitest"},"dependencies":{"@caspeco/eslint-config-ts":"5.4.2"},"devDependencies":{"@caspeco/test-utils":"*","eslint":"^9.39.4","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.1.1","eslint-plugin-react-refresh":"^0.5.3","globals":"^17.9.0"},"peerDependencies":{"eslint":"^9.39.4","eslint-plugin-react":"^7.37.5","eslint-plugin-react-hooks":"^7.0.1","eslint-plugin-react-refresh":"^0.5.3","globals":"^17.4.0"},"publishConfig":{"access":"public"},"gitHead":"9c9ab24e42b6dcbed72dfd5bf54092cb05ebfcaa","_id":"@caspeco/eslint-config-react@5.4.2","_nodeVersion":"24.19.0","_npmVersion":"11.17.0","dist":{"integrity":"sha512-DpIYB+fata1P4KFYI1DX2rL+wkdB/S5SxzQlMcutXLvtmHv6A2pfVPmu3hbBmAU6tK3xCWQg6Zc57d/v9wZb/Q==","shasum":"18bf4e510cefecbc6550aa434b1718076ca9268e","tarball":"https://registry.npmjs.org/@caspeco/eslint-config-react/-/eslint-config-react-5.4.2.tgz","fileCount":16,"unpackedSize":18066,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@caspeco%2feslint-config-react@5.4.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIBIUVa6Q7xY7inyjuub1wd5aEEANLgqVEgAnXCaeHlM2AiBdSTrjROhv5lwBlS2vaSoJ+cFh+1udUDdqD8qBPQgjlg=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:27ce68f7-d970-4d25-978c-a9c5bef9b86b"}},"directories":{},"maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eslint-config-react_5.4.2_1786516211482_0.4375053359982397"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-11T09:30:06.941Z","modified":"2026-08-12T06:30:12.127Z","5.0.0-beta.0":"2025-11-11T09:30:07.267Z","5.0.0-beta.1":"2025-11-11T09:38:05.530Z","5.0.0":"2025-11-11T12:29:06.552Z","5.0.1-beta.1":"2025-11-17T10:40:32.473Z","5.0.1-beta.2":"2025-11-24T09:25:29.564Z","5.0.1":"2025-11-24T10:10:17.956Z","5.0.2":"2025-11-24T15:33:28.568Z","5.1.0":"2025-12-11T08:49:13.769Z","5.2.0":"2026-04-28T08:26:59.193Z","5.2.1":"2026-04-29T10:40:38.739Z","5.3.0":"2026-06-16T12:13:11.677Z","5.4.0":"2026-07-09T13:31:06.294Z","5.4.1":"2026-07-10T09:17:33.691Z","5.4.2":"2026-08-12T06:30:11.771Z"},"bugs":{"url":"https://github.com/Caspeco/eslint-config/issues"},"license":"MIT","homepage":"https://github.com/Caspeco/eslint-config#readme","keywords":["eslint","eslint-config","react","typescript","caspeco"],"repository":{"type":"git","url":"git+https://github.com/Caspeco/eslint-config.git","directory":"packages/eslint-config-react"},"description":"Caspeco ESLint configuration for React projects","maintainers":[{"name":"parsecaspeco","email":"anders.hassis@caspeco.se"},{"name":"caspecoludvig","email":"ludvig.norinder@caspeco.se"},{"name":"marcuscaspeco","email":"marcus.otterstrom@caspeco.se"}],"readme":"# @caspeco/eslint-config-react\n\nCaspeco ESLint configuration for React + TypeScript projects.\n\n## Installation\n\n```bash\nnpm install --save-dev @caspeco/eslint-config-react\n```\n\n### Migrating from v4.x\n\nIf you're upgrading from `@caspeco/eslint-config` v4.x, use the automated migration script:\n\n```bash\n# Preview changes\nnpx caspeco-react-migrate-v5 src/ --dry-run\n\n# Apply changes\nnpx caspeco-react-migrate-v5 src/\n```\n\nThis updates the plugin namespace from `caspeco/` to `caspeco-react/`. See the [Migration Guide](../../MIGRATION.md) for details.\n\n## Usage\n\nCreate an `eslint.config.js` file in your project root:\n\n```js\nimport config from \"@caspeco/eslint-config-react\";\n\nexport default [{ ignores: [\"dist/**/*\", \"build/**/*\"] }, ...config];\n```\n\n### React Compiler (opt-in)\n\nIf your project has adopted the [React Compiler](https://react.dev/learn/react-compiler), use the\n`/compiler` entry point instead. It is a drop-in replacement that enables the full\n`eslint-plugin-react-hooks` recommended ruleset, including the React Compiler rules\n(`react-hooks/purity`, `react-hooks/static-components`, `react-hooks/use-memo`,\n`react-hooks/immutability`, `react-hooks/set-state-in-render`, and more):\n\n```js\nimport config from \"@caspeco/eslint-config-react/compiler\";\n\nexport default [{ ignores: [\"dist/**/*\", \"build/**/*\"] }, ...config];\n```\n\nThe default config (`@caspeco/eslint-config-react`) intentionally enables only\n`react-hooks/rules-of-hooks` and `react-hooks/exhaustive-deps`, so teams that have not\nyet adopted the React Compiler are not flooded with compiler-specific warnings.\n\n## What's Included\n\nThis configuration includes everything from our TypeScript config plus React-specific rules:\n\n### Base TypeScript Configuration\n\n- **TypeScript ESLint** - recommended-type-checked config\n- **No Barrel Files** - Prevents barrel file usage\n- **File Naming Conventions** - Enforces kebab-case for files and folders\n- **Prettier Integration** - Compatible with Prettier formatting\n\n### React-Specific Configuration\n\n- **React Plugin** - Core React linting rules\n- **React Hooks** - Enforces rules of hooks\n- **React Refresh** - Fast Refresh support for Vite/development\n- **Caspeco Plugin** - Custom rules for Caspeco projects (Chakra UI import restrictions)\n\n## Peer Dependencies\n\nThis package requires the following peer dependencies (automatically installed by npm 7+):\n\n- `eslint`\n- `eslint-plugin-react`\n- `eslint-plugin-react-hooks`\n- `eslint-plugin-react-refresh`\n- `globals`\n\nSee [package.json](./package.json) for specific version requirements.\n\n**Note:** Additional TypeScript-related peer dependencies are inherited from `@caspeco/eslint-config-ts` (installed automatically as a regular dependency).\n\n## Plugins\n\n### eslint-plugin-react\n\n[eslint-plugin-react](https://github.com/jsx-eslint/eslint-plugin-react)\n\nCore React linting rules with the following customizations:\n\n- `react-in-jsx-scope`: off (not needed in modern React)\n- `prop-types`: off (using TypeScript instead)\n- `display-name`: off\n\n### eslint-plugin-react-hooks\n\n[eslint-plugin-react-hooks](https://www.npmjs.com/package/eslint-plugin-react-hooks)\n\nEnforces:\n\n- Rules of Hooks (error)\n- Exhaustive dependencies (warning)\n\n### eslint-plugin-react-refresh\n\n[eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh)\n\nEnsures components are compatible with Fast Refresh in development.\n\n### caspeco-react-plugin\n\nCustom React-specific plugin with Caspeco rules:\n\n- Discourages direct imports from `@chakra-ui/react` (use themed components instead)\n\n## Relationship with @caspeco/eslint-config-ts\n\nThis package depends on and extends `@caspeco/eslint-config-ts`, which is automatically installed as a dependency. This ensures React projects always use the same TypeScript rules without drift. If you're building a React project, use this package. For vanilla TypeScript projects, use `@caspeco/eslint-config-ts`.\n\n## License\n\nMIT\n","readmeFilename":"README.md"}