{"_id":"@duclonghoang/biome-config","_rev":"7-44a7325a394973707db6f02c2d72edef","name":"@duclonghoang/biome-config","dist-tags":{"latest":"1.1.2"},"versions":{"1.0.0":{"name":"@duclonghoang/biome-config","version":"1.0.0","keywords":["biome","config","formatter","linter"],"author":{"name":"Duc Long Hoang"},"license":"MIT","_id":"@duclonghoang/biome-config@1.0.0","maintainers":[{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"}],"homepage":"https://gitlab.com/duc-long-hoang/config-packages#readme","bugs":{"url":"https://gitlab.com/duc-long-hoang/config-packages/issues"},"dist":{"shasum":"e3b21cda654ac052245859c8757fe09848fff932","tarball":"https://registry.npmjs.org/@duclonghoang/biome-config/-/biome-config-1.0.0.tgz","fileCount":1,"integrity":"sha512-8V3wnMAlvbaJMV1ZZu9LrlGF3Wfp+r75m7y8qPf+RqrTq174rMwZAG8gyLYb4FoglhMatK2umE3aJxkxt1aksQ==","signatures":[{"sig":"MEUCIQDlZYBLffp28zgaapI/qsrZ127rl/vIHL1E+y3wHOud8AIgHjqRozqMmwlDwevS69pFWjjdykRJ5CGDHxWucYZuHWc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":405},"main":"biome.jsonc","_from":"file:duclonghoang-biome-config-1.0.0.tgz","_npmUser":{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"},"_resolved":"/tmp/5d5322d86b4824adea0272b38d31cca2/duclonghoang-biome-config-1.0.0.tgz","_integrity":"sha512-8V3wnMAlvbaJMV1ZZu9LrlGF3Wfp+r75m7y8qPf+RqrTq174rMwZAG8gyLYb4FoglhMatK2umE3aJxkxt1aksQ==","repository":{"url":"git+https://gitlab.com/duc-long-hoang/config-packages.git","type":"git"},"_npmVersion":"10.9.3","description":"Shared Biome configuration","directories":{},"_nodeVersion":"22.19.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/biome-config_1.0.0_1768424181062_0.5655107185423396","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@duclonghoang/biome-config","version":"1.0.1","keywords":["biome","config","formatter","linter"],"author":{"name":"Duc Long Hoang"},"license":"MIT","_id":"@duclonghoang/biome-config@1.0.1","maintainers":[{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"}],"homepage":"https://gitlab.com/duc-long-hoang/config-packages#readme","bugs":{"url":"https://gitlab.com/duc-long-hoang/config-packages/issues"},"dist":{"shasum":"c2436cb91c5b93c33e720481330332d496c5a753","tarball":"https://registry.npmjs.org/@duclonghoang/biome-config/-/biome-config-1.0.1.tgz","fileCount":2,"integrity":"sha512-NBPPkkzR8nEGFnxGRB+3+vkAk0CRkXIHYdq+hGHxDIkWdux+oCoXQb14BR1ULPoByEZdn7ixnTcsMd/KhnZXdA==","signatures":[{"sig":"MEQCIGYld+dpVAxHXh9AfUO2/wgbz9PsWPPL3wkJHM+6+73tAiAWbLuPvqfV9NR4dzqnn9lcMSSSWxsJTgLKxzrSyL+ehA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":2239},"main":"biome.jsonc","type":"module","_from":"file:duclonghoang-biome-config-1.0.1.tgz","exports":{".":"./biome.jsonc"},"_npmUser":{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"},"_resolved":"/tmp/ed57ec4cb44ed69d7d0795c3e9bf22af/duclonghoang-biome-config-1.0.1.tgz","_integrity":"sha512-NBPPkkzR8nEGFnxGRB+3+vkAk0CRkXIHYdq+hGHxDIkWdux+oCoXQb14BR1ULPoByEZdn7ixnTcsMd/KhnZXdA==","repository":{"url":"git+https://gitlab.com/duc-long-hoang/config-packages.git","type":"git","directory":"packages/biome-config"},"_npmVersion":"10.9.3","description":"Shared Biome configuration","directories":{},"_nodeVersion":"22.19.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/biome-config_1.0.1_1768462900815_0.878973669455225","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@duclonghoang/biome-config","version":"1.0.2","keywords":["biome","config","formatter","linter"],"author":{"name":"Duc Long Hoang"},"license":"MIT","_id":"@duclonghoang/biome-config@1.0.2","maintainers":[{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"}],"homepage":"https://gitlab.com/DucLongHoang/config-packages#readme","bugs":{"url":"https://gitlab.com/DucLongHoang/config-packages/issues"},"dist":{"shasum":"403a4abd72588823aedb5dcc2d21e0db16054fed","tarball":"https://registry.npmjs.org/@duclonghoang/biome-config/-/biome-config-1.0.2.tgz","fileCount":3,"integrity":"sha512-IOk71lVIEhEbmgUzys6ff2iCECZQgw/8fQ174uu8n+KD2c8Gs1SVBIgIZBkqhmtPi/LhFDSvWOXznSGY4m81xA==","signatures":[{"sig":"MEUCIQDf1LnsE4f90PAxnqLhhG6bduQJCoACKzYbYRT8ZoycVAIgQswjZ+W0LguCUDrui+A/A0PVbqsJE+hphD50AADx6qY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":5703},"main":"biome.jsonc","type":"module","_from":"file:duclonghoang-biome-config-1.0.2.tgz","exports":{".":"./biome.jsonc"},"_npmUser":{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"},"_resolved":"/tmp/b184cb2a9aa101be365fdc1f26709e77/duclonghoang-biome-config-1.0.2.tgz","_integrity":"sha512-IOk71lVIEhEbmgUzys6ff2iCECZQgw/8fQ174uu8n+KD2c8Gs1SVBIgIZBkqhmtPi/LhFDSvWOXznSGY4m81xA==","repository":{"url":"git+https://gitlab.com/DucLongHoang/config-packages.git","type":"git","directory":"packages/biome-config"},"_npmVersion":"10.9.3","description":"Shared Biome configuration","directories":{},"_nodeVersion":"22.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/biome-config_1.0.2_1768465683587_0.42629528252709914","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@duclonghoang/biome-config","version":"1.0.3","keywords":["biome","config","formatter","linter"],"author":{"name":"Duc Long Hoang"},"license":"MIT","_id":"@duclonghoang/biome-config@1.0.3","maintainers":[{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"}],"homepage":"https://gitlab.com/DucLongHoang/config-packages#readme","bugs":{"url":"https://gitlab.com/DucLongHoang/config-packages/issues"},"dist":{"shasum":"fdc1f91b62d1634dd4cb3d48d29478158fedc130","tarball":"https://registry.npmjs.org/@duclonghoang/biome-config/-/biome-config-1.0.3.tgz","fileCount":4,"integrity":"sha512-BRfq0tzPXpuuh5ImwiRbcZgEaiP1k00eTvYnSVE54An2SSksoSG0ajo6Jwu1CVbb4AwC8fnj7RJQU7v5Ff30YA==","signatures":[{"sig":"MEYCIQDbgpcug2Q9cVWhf+k2eiNLjoijPR0PhCtkbZxtIONy9QIhAMDRNHVYpi6RzWoKAb0OyGr35n/+USuttXuMt8hWyjT2","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":6864},"main":"biome.jsonc","type":"module","_from":"file:duclonghoang-biome-config-1.0.3.tgz","exports":{".":"./biome.jsonc"},"_npmUser":{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"},"_resolved":"/tmp/100bf5bf2648ff98f0d86de1f58d8935/duclonghoang-biome-config-1.0.3.tgz","_integrity":"sha512-BRfq0tzPXpuuh5ImwiRbcZgEaiP1k00eTvYnSVE54An2SSksoSG0ajo6Jwu1CVbb4AwC8fnj7RJQU7v5Ff30YA==","repository":{"url":"git+https://gitlab.com/DucLongHoang/config-packages.git","type":"git","directory":"packages/biome-config"},"_npmVersion":"10.9.3","description":"Shared Biome configuration","directories":{},"_nodeVersion":"22.19.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/biome-config_1.0.3_1770283072483_0.5548035716359805","host":"s3://npm-registry-packages-npm-production"}},"1.1.0":{"name":"@duclonghoang/biome-config","version":"1.1.0","keywords":["biome","biomejs","config","formatter","linter","astro","typescript"],"author":{"name":"Duc Long Hoang"},"license":"MIT","_id":"@duclonghoang/biome-config@1.1.0","maintainers":[{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"}],"homepage":"https://gitlab.com/DucLongHoang/config-packages/-/tree/master/packages/biome-config","bugs":{"url":"https://gitlab.com/DucLongHoang/config-packages/-/issues"},"dist":{"shasum":"44edf2ac67daf34e3ebc4c3ab89a870bebb8fa65","tarball":"https://registry.npmjs.org/@duclonghoang/biome-config/-/biome-config-1.1.0.tgz","fileCount":4,"integrity":"sha512-CVYc+cqxTQ6T7Fnglib2c3UF8W8qIHkDXNiCNE2p88MrYCnOGM3sOUazEW0TlczVSb7sRGppfdVgUGlfa9TWwA==","signatures":[{"sig":"MEUCIAXzMOm2BuGQrw0YGkLmy/aSGRInWcT5L857Kml/AC/bAiEApu7b9AWmahd6UM5Ex/oQEd6Q7Tt33uJ0881+5MiQ9vw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16593},"type":"module","_from":"file:duclonghoang-biome-config-1.1.0.tgz","engines":{"node":">=20.19.0"},"exports":{".":"./biome.config.jsonc","./package.json":"./package.json"},"_npmUser":{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"},"_resolved":"/tmp/5adb401b02c7e6b3d8654deafd8114bf/duclonghoang-biome-config-1.1.0.tgz","_integrity":"sha512-CVYc+cqxTQ6T7Fnglib2c3UF8W8qIHkDXNiCNE2p88MrYCnOGM3sOUazEW0TlczVSb7sRGppfdVgUGlfa9TWwA==","repository":{"url":"git+https://gitlab.com/DucLongHoang/config-packages.git","type":"git","directory":"packages/biome-config"},"_npmVersion":"10.9.3","description":"Shared Biome formatter & linter configuration","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@biomejs/biome":">=2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/biome-config_1.1.0_1788685336984_0.9203998973833925","host":"s3://npm-registry-packages-npm-production"}},"1.1.1":{"name":"@duclonghoang/biome-config","version":"1.1.1","keywords":["biome","biomejs","config","formatter","linter","astro","typescript"],"author":{"name":"Duc Long Hoang"},"license":"MIT","_id":"@duclonghoang/biome-config@1.1.1","maintainers":[{"name":"duclonghoang","email":"duclonghoang.dlh+npm@gmail.com"}],"homepage":"https://gitlab.com/DucLongHoang/config-packages/-/tree/master/packages/biome-config","bugs":{"url":"https://gitlab.com/DucLongHoang/config-packages/-/issues"},"dist":{"shasum":"021e028a6f93719ef920b990e55315fa166b0cbe","tarball":"https://registry.npmjs.org/@duclonghoang/biome-config/-/biome-config-1.1.1.tgz","fileCount":4,"integrity":"sha512-8kDoikD5mEDF3MXeNqvd5uy18I6BXifMqDaHocUuHpP3F5ZPU2wtSOVAuveER/5WiAzZI8kPTyPDtSJ8e6Ei5w==","signatures":[{"sig":"MEUCIQDZddBbpuxJnWSO/fjqY+HGQJnRWYgPaFmzj0ioxE1PYgIgF6OOJ5y8Md8uWDt819T1HlN7o8c70ZK/r7kegxAhIss=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":16593},"type":"module","_from":"file:duclonghoang-biome-config-1.1.1.tgz","engines":{"node":">=20.19.0"},"exports":{".":"./biome.config.jsonc","./package.json":"./package.json"},"_npmUser":{"name":"GitLab CI/CD","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"gitlab","oidcConfigId":"oidc:ba68ffa4-fb50-487f-91a9-b9932b64e009"}},"_resolved":"/tmp/6fa72b9f0aa4933345a13b7efc018b19/duclonghoang-biome-config-1.1.1.tgz","_integrity":"sha512-8kDoikD5mEDF3MXeNqvd5uy18I6BXifMqDaHocUuHpP3F5ZPU2wtSOVAuveER/5WiAzZI8kPTyPDtSJ8e6Ei5w==","repository":{"url":"git+https://gitlab.com/DucLongHoang/config-packages.git","type":"git","directory":"packages/biome-config"},"_npmVersion":"11.19.0","description":"Shared Biome formatter & linter configuration","directories":{},"sideEffects":false,"_nodeVersion":"24.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"@biomejs/biome":">=2.5.0"},"_npmOperationalInternal":{"tmp":"tmp/biome-config_1.1.1_1788687699666_0.8930334626043817","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@duclonghoang/biome-config","version":"1.1.2","description":"Shared Biome formatter & linter configuration","license":"MIT","author":{"name":"Duc Long Hoang"},"repository":{"type":"git","url":"git+https://gitlab.com/DucLongHoang/config-packages.git","directory":"packages/biome-config"},"homepage":"https://gitlab.com/DucLongHoang/config-packages/-/tree/master/packages/biome-config","bugs":{"url":"https://gitlab.com/DucLongHoang/config-packages/-/issues"},"keywords":["biome","biomejs","config","formatter","linter","astro","typescript"],"type":"module","exports":{".":"./biome.config.jsonc","./package.json":"./package.json"},"peerDependencies":{"@biomejs/biome":">=2.5.0"},"publishConfig":{"access":"public"},"engines":{"node":">=20.19.0"},"sideEffects":false,"_id":"@duclonghoang/biome-config@1.1.2","_integrity":"sha512-27eGQoC2LAunaGqkXbk9LerjUXoYCgvtVI7QAC6b0fX4wTxyzGfNPihFvZFVbDJvFqEtfSoHZWFhdfxEiYwtAQ==","_resolved":"/tmp/312361a48132353c50ac760961de8896/duclonghoang-biome-config-1.1.2.tgz","_from":"file:duclonghoang-biome-config-1.1.2.tgz","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-27eGQoC2LAunaGqkXbk9LerjUXoYCgvtVI7QAC6b0fX4wTxyzGfNPihFvZFVbDJvFqEtfSoHZWFhdfxEiYwtAQ==","shasum":"128b9e91ded307599f0298fdb4c26b2938a8fc3e","tarball":"https://registry.npmjs.org/@duclonghoang/biome-config/-/biome-config-1.1.2.tgz","fileCount":4,"unpackedSize":16675,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQDQwCS/tEj3szEFaXnY1iCCpOWIUoeYLewvp6ksVRqO4QIgWbAxr8I7i7g8U4ily5fbK97wd5vn5JWhuggzzyto6Wo="}]},"_npmUser":{"name":"GitLab CI/CD","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"gitlab","oidcConfigId":"oidc:ba68ffa4-fb50-487f-91a9-b9932b64e009"}},"directories":{},"maintainers":[{"name":"duclonghoang","email":"me@duclonghoang.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/biome-config_1.1.2_1788689263333_0.36403268865648863"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-14T20:56:20.973Z","modified":"2026-09-06T10:07:43.625Z","1.0.0":"2026-01-14T20:56:21.216Z","1.0.1":"2026-01-15T07:41:40.948Z","1.0.2":"2026-01-15T08:28:03.718Z","1.0.3":"2026-02-05T09:17:52.627Z","1.1.0":"2026-09-06T09:02:17.119Z","1.1.1":"2026-09-06T09:41:39.798Z","1.1.2":"2026-09-06T10:07:43.478Z"},"bugs":{"url":"https://gitlab.com/DucLongHoang/config-packages/-/issues"},"author":{"name":"Duc Long Hoang"},"license":"MIT","homepage":"https://gitlab.com/DucLongHoang/config-packages/-/tree/master/packages/biome-config","keywords":["biome","biomejs","config","formatter","linter","astro","typescript"],"repository":{"type":"git","url":"git+https://gitlab.com/DucLongHoang/config-packages.git","directory":"packages/biome-config"},"description":"Shared Biome formatter & linter configuration","maintainers":[{"name":"duclonghoang","email":"me@duclonghoang.com"}],"readme":"# @duclonghoang/biome-config\n\nShared [Biome](https://biomejs.dev) configuration — formatter, linter and assists — for Biome 2.5+.\n\nBiome is the single tool for **Node, Next.js and TanStack** projects: it formats and lints everything, and no second formatter is involved. Astro projects use [`@duclonghoang/prettier-config`](https://www.npmjs.com/package/@duclonghoang/prettier-config) instead. The two packages encode the same style, so a project can move between them without reformatting, but they are never used together.\n\n## Installation\n\n```bash\npnpm add -D @duclonghoang/biome-config @biomejs/biome\n```\n\n## Usage\n\n`biome.jsonc` in your project root:\n\n```jsonc\n{\n  \"$schema\": \"./node_modules/@biomejs/biome/configuration_schema.json\",\n  \"extends\": [\"@duclonghoang/biome-config\"]\n}\n```\n\n> **Requires a `.gitignore`.** This config sets `vcs.useIgnoreFile: true`, and Biome fails hard with `Biome couldn't find an ignore file` if the project root has none. Add one, or override with `\"vcs\": { \"enabled\": false }`.\n\n### Overriding\n\n```jsonc\n{\n  \"extends\": [\"@duclonghoang/biome-config\"],\n  \"formatter\": { \"lineWidth\": 100 },\n  \"linter\": {\n    \"rules\": {\n      \"suspicious\": { \"noConsole\": \"off\" }\n    }\n  }\n}\n```\n\n`files.includes` is **replaced**, not merged, when you override it. Re-state the negations you want to keep:\n\n```jsonc\n{\n  \"extends\": [\"@duclonghoang/biome-config\"],\n  \"files\": {\n    \"includes\": [\"src/**\", \"!**/dist/**\", \"!**/*.gen.*\"]\n  }\n}\n```\n\n### Monorepos\n\nRoot `biome.jsonc`:\n\n```jsonc\n{ \"extends\": [\"@duclonghoang/biome-config\"] }\n```\n\nPer-package `biome.jsonc`:\n\n```jsonc\n{\n  \"root\": false,\n  \"extends\": \"//\",\n  \"linter\": {\n    \"rules\": { \"suspicious\": { \"noConsole\": \"off\" } }\n  }\n}\n```\n\nBiome 2 allows exactly one `root: true` config per project tree. This package therefore does **not** set `root` at all — it defaults to `true` for your root config, and a nested package config can set `\"root\": false` itself.\n\nFor the same reason the shipped file is named `biome.config.jsonc`, not `biome.jsonc`: Biome auto-discovers every `biome.json`/`biome.jsonc` in the tree, so a shared config using that name inside `node_modules` or a workspace collides with your own root config. Reach it through the package name, which resolves via the `exports` map.\n\n## What it configures\n\n### Formatter\n\n| | |\n| --- | --- |\n| Indentation | 2 spaces |\n| Line width | 120 |\n| Line endings | LF |\n| Quotes (JS/JSX/CSS/GraphQL) | single |\n| Semicolons | as needed |\n| Trailing commas | all (JS) / none (JSON) |\n| Arrow parens | always |\n\n`useEditorconfig` is `false` so this config stays authoritative and a stray `.editorconfig` cannot silently change formatting.\n\n### Assists\n\nImport sorting is enabled with explicit groups, separated by blank lines:\n\n1. `node:` / `bun:` builtins\n2. protocol and URL imports\n3. framework packages — `next`, `react`, `react-dom`, `@tanstack/*`\n4. remaining packages\n5. path aliases\n6. relative paths\n7. stylesheets\n\n`sortBareImports` is `false`, so side-effect imports such as `import './global.css'` keep their position — CSS cascade order and polyfills depend on it. The stylesheet group therefore applies to stylesheets imported for a value, e.g. `import styles from './x.module.css'`.\n\n`useSortedKeys`, `useSortedProperties` and `useSortedPackageJson` are **off** — reordering object literals and JSON keys changes behavior too often to be a safe default.\n\n### Linter\n\nEverything in `recommended`, plus a stricter `style` group (`useBlockStatements`, `useCollapsedIf`, `useTemplate`, `useImportType`/`useExportType`, `noUselessElse`, `noNestedTernary`) and `suspicious/noDebugger`.\n\nDeliberately relaxed:\n\n| Rule | Why |\n| --- | --- |\n| `correctness/useUniqueElementIds` | Components legitimately hardcode ids in markup. |\n| `correctness/noUndeclaredDependencies` | Fires on transitive, peer and workspace-internal imports. |\n| `performance/noBarrelFile`, `noReExportAll` | Barrel files are the normal shape of a published package. |\n| `suspicious/noConsole` | Warns, but allows `warn`/`error`/`info`/`debug`/`table`. |\n| `complexity/noForEach` | Stylistic, not a defect. |\n\nUnused-code rules warn but never autofix — deleting a symbol you are halfway through writing is worse than the warning.\n\nTailwind class sorting is on via `nursery/useSortedClasses`, covering `className`, `class`, `classList` and the `cn`/`cx`/`clsx`/`tw`/`twMerge`/`cva`/`tv` helpers. It is a nursery rule, so it may change between Biome releases.\n\n### JSON\n\nComments are parsed but should not be used: if a file's extension is `.json`, it holds data, and anything that needs explaining belongs in a README. Use `.jsonc` when you genuinely need comments.\n\nThis is a convention rather than something the config enforces. `allowComments: false` would enforce it, but it is unsafe in a shared config — in Biome 2.5 a later matching `overrides` entry resets parser options even when it says nothing about them, and a consumer's overrides are applied after these, so any override of theirs matching a `.jsonc` file would turn it into a parse error with no visible cause.\n\n### Overrides\n\n- **`.d.ts`** — `noUnusedVariables` and `noExplicitAny` off.\n- **Configs, scripts, tests, benchmarks** — `noConsole` and `noExplicitAny` off.\n\n## Astro\n\nDo not use this config in an Astro project. Biome parses only the frontmatter of a `.astro` file, not the template, so it cannot format one. Use [`@duclonghoang/prettier-config`](https://www.npmjs.com/package/@duclonghoang/prettier-config), which covers the whole file and every other file type in the project:\n\n```bash\npnpm add -D @duclonghoang/prettier-config prettier\n```\n\n```js\n// prettier.config.mjs\nexport { default } from '@duclonghoang/prettier-config'\n```\n\nBoth packages produce the same formatting, so switching a project from one to the other does not rewrite it.\n\n## Editor setup\n\n```bash\ncode --install-extension biomejs.biome\n```\n\n```json\n{\n  \"editor.defaultFormatter\": \"biomejs.biome\",\n  \"editor.formatOnSave\": true,\n  \"editor.codeActionsOnSave\": {\n    \"source.fixAll.biome\": \"explicit\",\n    \"source.organizeImports.biome\": \"explicit\"\n  },\n  \"prettier.enable\": false\n}\n```\n\nDisable the Prettier extension so it cannot format files behind Biome's back.\n\n## License\n\nMIT © Duc Long Hoang\n\n## Links\n\n- [npm Package](https://www.npmjs.com/package/@duclonghoang/biome-config)\n- [Source Code](https://gitlab.com/DucLongHoang/config-packages/-/tree/master/packages/biome-config)\n- [Biome Documentation](https://biomejs.dev)\n- [Report Issues](https://gitlab.com/DucLongHoang/config-packages/-/issues)\n","readmeFilename":"README.md"}