{"_id":"@aha-co/config","_rev":"5-da420026ad87a9915ea4124524a4f879","name":"@aha-co/config","dist-tags":{"latest":"1.2.0"},"versions":{"1.0.0":{"name":"@aha-co/config","version":"1.0.0","keywords":["config","eslint","prettier","typescript","aha-co"],"author":{"url":"https://theaha.co","name":"The Aha Co","email":"engineering@theaha.co"},"license":"MIT","_id":"@aha-co/config@1.0.0","maintainers":[{"name":"zachfedor","email":"zachfedor@gmail.com"}],"homepage":"https://github.com/theahaco/aha-co-config","bugs":{"url":"https://github.com/theahaco/aha-co-config/issues"},"dist":{"shasum":"40be80fecd40f2cf9d9649fedd1c5f0b39568f70","tarball":"https://registry.npmjs.org/@aha-co/config/-/config-1.0.0.tgz","fileCount":9,"integrity":"sha512-UHQOyZQXmdwuxxs0Bb6WtdTZ0vL86mbcOUQdXFcU4uaw2geP5oj/eVzG/Pm773YbbbLJZzx0D2NZeiX16Xi3Tg==","signatures":[{"sig":"MEUCIQCC6YtQdOOygpBUUlbsbDdPwisASS7FCRNLWi7UeTH1jgIgbpVwkVFYjRnqc+JyNLnv5KvV5ywiCARmlBH6OaeuQmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":21926},"main":"index.js","type":"module","$schema":"https://json.schemastore.org/package","exports":{".":"./index.js","./eslint":"./eslint.config.js","./prettier":"./prettier.js","./reset.d.ts":"./reset.d.ts","./typescript":"./typescript.json"},"gitHead":"6683d5f263b017d0aef81c32bee8501935b0eb97","imports":{"#/*":"./*"},"scripts":{"lint":"eslint .","format":"prettier . --write","validate":"run-p -l format lint typecheck","typecheck":"tsc"},"_npmUser":{"name":"zachfedor","email":"zachfedor@gmail.com"},"prettier":"./prettier.js","repository":{"url":"git+https://github.com/theahaco/aha-co-config.git","type":"git"},"_npmVersion":"10.8.2","description":"Standardized configs for Aha JS projects","directories":{},"_nodeVersion":"20.19.1","dependencies":{"tslib":"^2.8.1","globals":"^16.3.0","typescript-eslint":"^8.38.0","eslint-plugin-react":"^7.37.5","@vitest/eslint-plugin":"^1.3.4","eslint-plugin-import-x":"^4.16.1","eslint-plugin-jest-dom":"^5.5.0","eslint-plugin-playwright":"^2.2.0","eslint-plugin-react-hooks":"^7.0.0","@total-typescript/ts-reset":"^0.6.1","eslint-plugin-testing-library":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"react":"^19.1.0","eslint":"^9.32.0","vitest":"^3.2.4","prettier":"^3.6.2","typescript":"^5.8.3","npm-run-all":"^4.1.5","@types/react":"^19.1.8","@playwright/test":"^1.54.1"},"_npmOperationalInternal":{"tmp":"tmp/config_1.0.0_1760545957926_0.01716467564680535","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.0.1":{"name":"@aha-co/config","version":"1.0.1","keywords":["config","eslint","prettier","typescript","aha-co"],"author":{"url":"https://theaha.co","name":"The Aha Co","email":"engineering@theaha.co"},"license":"MIT","_id":"@aha-co/config@1.0.1","maintainers":[{"name":"zachfedor","email":"zachfedor@gmail.com"}],"homepage":"https://github.com/theahaco/aha-co-config","bugs":{"url":"https://github.com/theahaco/aha-co-config/issues"},"dist":{"shasum":"802a0136d74f0c43cb8af059848b9c3f8c589923","tarball":"https://registry.npmjs.org/@aha-co/config/-/config-1.0.1.tgz","fileCount":11,"integrity":"sha512-a8qxMUPWLZXMhU4jh4NsQlNVRY3X4AV/+iBqbyFCYXGwDanuIMhjsC+RUbw0Zq90ueop79KD7O4UE8XmyIqBtg==","signatures":[{"sig":"MEYCIQDWwAajC8hVRuHA2nKeoIGIUGVnf5Qludc30NDmM3Hy5gIhAOR0/iVjHfvhn/hgimZ9V6PUYZ6jPKEMdSOYGRfYm7N0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aha-co%2fconfig@1.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":25900},"main":"index.js","type":"module","$schema":"https://json.schemastore.org/package","exports":{".":"./index.js","./eslint":"./eslint.config.js","./prettier":"./prettier.js","./reset.d.ts":"./reset.d.ts","./typescript":"./typescript.json"},"gitHead":"7fb26cb522d40d029cd084381686cb18390cd48e","imports":{"#/*":"./*"},"scripts":{"lint":"eslint .","format":"prettier . --write","prepack":"npm run validate","validate":"run-p -l format lint typecheck","typecheck":"tsc"},"_npmUser":{"name":"zachfedor","email":"zachfedor@gmail.com"},"prettier":"./prettier.js","repository":{"url":"git+https://github.com/theahaco/aha-co-config.git","type":"git"},"_npmVersion":"10.8.2","description":"Standardized configs for Aha JS projects","directories":{},"_nodeVersion":"20.19.5","dependencies":{"tslib":"^2.8.1","globals":"^16.3.0","typescript-eslint":"^8.38.0","eslint-plugin-react":"^7.37.5","@vitest/eslint-plugin":"^1.3.4","eslint-plugin-import-x":"^4.16.1","eslint-plugin-jest-dom":"^5.5.0","eslint-plugin-playwright":"^2.2.0","eslint-plugin-react-hooks":"^7.0.0","@total-typescript/ts-reset":"^0.6.1","eslint-plugin-testing-library":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"react":"^19.1.0","eslint":"^9.32.0","vitest":"^3.2.4","prettier":"^3.6.2","typescript":"^5.8.3","npm-run-all":"^4.1.5","@types/react":"^19.1.8","@playwright/test":"^1.54.1"},"_npmOperationalInternal":{"tmp":"tmp/config_1.0.1_1760548838041_0.9661454198041597","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."},"1.2.0":{"name":"@aha-co/config","version":"1.2.0","keywords":["config","eslint","prettier","typescript","aha-co"],"author":{"url":"https://theaha.co","name":"The Aha Co","email":"engineering@theaha.co"},"license":"MIT","_id":"@aha-co/config@1.2.0","maintainers":[{"name":"zachfedor","email":"zachfedor@gmail.com"}],"homepage":"https://github.com/theahaco/aha-co-config","bugs":{"url":"https://github.com/theahaco/aha-co-config/issues"},"dist":{"shasum":"84df4bf4f084f26f1364c3ee9846bdd4b7e905b3","tarball":"https://registry.npmjs.org/@aha-co/config/-/config-1.2.0.tgz","fileCount":15,"integrity":"sha512-t3kGHtDxPCazzF5zdAnfQ88WN2QQoa1+sqBeAajYxNRchCgTIOHYvQysIeHazC/9ft51CzhXOeevW/P2zmNPHA==","signatures":[{"sig":"MEUCIQD/r8HF+OgorDeKdB9SEFlPQpry3M1Py/N0DKd5TEdxWwIgB8sJe6ysolMh/7iDsu7Z8rA/pgeD4dENwMBKZQ3yoF8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@aha-co%2fconfig@1.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":27963},"main":"index.js","type":"module","types":"index.d.ts","$schema":"https://json.schemastore.org/package","exports":{".":{"types":"./index.d.ts","import":"./index.js"},"./eslint":{"types":"./eslint.config.d.ts","import":"./eslint.config.js"},"./prettier":{"types":"./prettier.d.ts","import":"./prettier.js"},"./reset.d.ts":"./reset.d.ts","./typescript":"./typescript.app.json","./typescript.app":"./typescript.app.json","./typescript.lib":"./typescript.lib.json"},"gitHead":"64cad435e7b4b31af4e1fbe61598f76ac58bd6d3","imports":{"#/*":"./*"},"scripts":{"lint":"eslint .","format":"prettier . --write","prepack":"npm run validate","validate":"run-p -l format lint typecheck","typecheck":"tsc"},"_npmUser":{"name":"zachfedor","email":"zachfedor@gmail.com"},"prettier":"./prettier.js","repository":{"url":"git+https://github.com/theahaco/aha-co-config.git","type":"git"},"_npmVersion":"10.8.2","description":"Standardized configs for Aha JS projects","directories":{},"_nodeVersion":"20.19.5","dependencies":{"tslib":"^2.8.1","globals":"^16.3.0","typescript-eslint":"^8.38.0","eslint-plugin-react":"^7.37.5","@vitest/eslint-plugin":"^1.3.4","eslint-plugin-import-x":"^4.16.1","eslint-plugin-jest-dom":"^5.5.0","eslint-plugin-playwright":"^2.2.0","eslint-plugin-react-hooks":"^7.0.0","@total-typescript/ts-reset":"^0.6.1","eslint-plugin-testing-library":"^7.6.1"},"_hasShrinkwrap":false,"devDependencies":{"react":"^19.1.0","eslint":"^9.32.0","vitest":"^3.2.4","prettier":"^3.6.2","typescript":"^5.8.3","npm-run-all":"^4.1.5","@types/react":"^19.1.8","@types/eslint":"^9.6.1","@playwright/test":"^1.54.1"},"_npmOperationalInternal":{"tmp":"tmp/config_1.2.0_1760970675747_0.31005549501264706","host":"s3://npm-registry-packages-npm-production"},"deprecated":"Package no longer supported. Contact Support at https://www.npmjs.com/support for more info."}},"time":{"created":"2025-10-15T16:32:37.862Z","modified":"2026-01-31T00:27:53.024Z","1.0.0":"2025-10-15T16:32:38.128Z","1.0.1":"2025-10-15T17:20:38.271Z","1.2.0":"2025-10-20T14:31:15.933Z"},"bugs":{"url":"https://github.com/theahaco/aha-co-config/issues"},"author":{"url":"https://theaha.co","name":"The Aha Co","email":"engineering@theaha.co"},"license":"MIT","homepage":"https://github.com/theahaco/aha-co-config","keywords":["config","eslint","prettier","typescript","aha-co"],"repository":{"url":"git+https://github.com/theahaco/aha-co-config.git","type":"git"},"description":"Standardized configs for Aha JS projects","maintainers":[{"name":"chadoh","email":"hi+npm@chadoh.com"},{"name":"zachfedor","email":"zachfedor@gmail.com"}],"readme":"<div align=\"center\">\n  <a\n    alt=\"The Aha Co\"\n    href=\"https://theaha.co\"\n  >\n    <img\n      width=\"300px\"\n      src=\"logo.svg\"\n    />\n  </a>\n</div>\n\n# @aha-co/config\n\nStandardized set of configuration files for TypeScript projects so we don't have\nto think about them. Heavily inspired by\n[@epic-web/config](https://github.com/epicweb-dev/config).\n\n## Usage\n\nThese are a set of defaults and everything can be overridden as needed per\nproject.\n\n```\nnpm install @aha-co/config\n```\n\n### TypeScript\n\nCreate a `tsconfig.json` file in the project root and\n[extend this config file](https://www.typescriptlang.org/tsconfig/#extends):\n\n```json\n{\n\t\"extends\": [\"@aha-co/config/typescript\"],\n\t\"include\": [\"**/*.ts\", \"**/*.tsx\", \"**/*.js\", \"**/*.jsx\"],\n\t\"compilerOptions\": {\n\t\t// override here\n\t}\n}\n```\n\nCreate a `reset.d.ts` file:\n\n```ts\nimport \"@aha-co/config/reset.d.ts\"\n```\n\n#### TS for Libraries\n\nThe configuration above assumes you're using a bundler to create an application.\nIf you're creating a library, you'll want the configuration to be more strict to\nbe consumable in as many setups as possible. You can extend a different config\ninstead:\n\n```json\n  extends: [\"@aha-co/config/typescript.lib\"],\n```\n\n### ESLint\n\nCreate a `eslint.config.js` file in the project root and\n[extend this config file](https://eslint.org/docs/latest/extend/shareable-configs#overriding-settings-from-shareable-configs):\n\n```js\nimport { config } from \"@aha-co/config/eslint\"\n\n/** @type {import(\"eslint\").Linter.Config[]} */\nexport default [\n\t...config,\n\t// override here\n]\n```\n\n### Prettier\n\nAdd a line in `package.json` to point to this config file:\n\n```json\n  \"prettier\": \"@aha-co/config/prettier\",\n```\n\nYou can add a `.prettierignore` file to your project root if needed.\n","readmeFilename":"README.md"}