{"_id":"@casoon/astro-speed-measure","_rev":"7-9a4aa6a3003897dbff65265c70511070","name":"@casoon/astro-speed-measure","dist-tags":{"latest":"0.4.0"},"versions":{"0.1.0":{"name":"@casoon/astro-speed-measure","version":"0.1.0","keywords":["astro","astro-integration","performance","build","metrics"],"license":"MIT","_id":"@casoon/astro-speed-measure@0.1.0","maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"homepage":"https://github.com/casoon/astro-speed-measure#readme","bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"dist":{"shasum":"918ef4f9af04399c61d409948d350029b61aa0ef","tarball":"https://registry.npmjs.org/@casoon/astro-speed-measure/-/astro-speed-measure-0.1.0.tgz","fileCount":50,"integrity":"sha512-MPJzAHfd9Ro22JI4i0boqvGgRqh2PvIDw59maruPIJYqjdM1pbGzbayWYh32X6RFaYMW6rpCdj/Rld1sAG3mjQ==","signatures":[{"sig":"MEQCIDzEqv9uIcn1X8ksZshnzgjHxGdYDlpabcNLdQrBEhJPAiA8cnErRB5KDbGOuqKH8/1o0ExqImnV26ystEdjcrptCw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52895},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"b73042809e57c353994dbfd7f0b432f37caa4ca6","scripts":{"dev":"tsc --watch","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jseidel","email":"joern.seidel@casoon.de"},"repository":{"url":"git+https://github.com/casoon/astro-speed-measure.git","type":"git"},"_npmVersion":"11.6.2","description":"Build performance metrics for Astro","directories":{},"_nodeVersion":"24.11.1","dependencies":{"picocolors":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"astro":"^5.1.1","typescript":"^5.7.2","@types/node":"^22.10.1"},"peerDependencies":{"astro":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/astro-speed-measure_0.1.0_1765236012607_0.8205929334386663","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@casoon/astro-speed-measure","version":"0.1.1","keywords":["astro","astro-integration","performance","build","metrics"],"license":"MIT","_id":"@casoon/astro-speed-measure@0.1.1","maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"homepage":"https://github.com/casoon/astro-speed-measure#readme","bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"dist":{"shasum":"c4663529a1d163f7dd8a3904edab76f21e30034c","tarball":"https://registry.npmjs.org/@casoon/astro-speed-measure/-/astro-speed-measure-0.1.1.tgz","fileCount":50,"integrity":"sha512-B96NpSP5zY6ObargQV/iP/PQjAPatjnc9xURbVolSHNvMOpnZTPba+/VG4LQaBw9A0KXQa8vR4O9mzi2/POezA==","signatures":[{"sig":"MEYCIQDx7qBLVwZxDK6jKyNVI45h+gZ6r9nP0Fgo5v4tF5S8owIhAK4v+r/Cv7AZXShuwCCIujNgingfoKwUlNjcb8ovQ92j","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":52895},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"2ebb4cae70a85c6785beb252a96ca88aa983cd95","scripts":{"dev":"tsc --watch","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jseidel","email":"joern.seidel@casoon.de"},"repository":{"url":"git+https://github.com/casoon/astro-speed-measure.git","type":"git"},"_npmVersion":"11.6.2","description":"Build performance metrics for Astro","directories":{},"_nodeVersion":"24.11.1","dependencies":{"picocolors":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"astro":"^5.1.1","typescript":"^5.7.2","@types/node":"^22.10.1"},"peerDependencies":{"astro":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/astro-speed-measure_0.1.1_1765236323526_0.8572564583216904","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@casoon/astro-speed-measure","version":"0.1.2","keywords":["astro","astro-integration","performance","build","metrics"],"license":"MIT","_id":"@casoon/astro-speed-measure@0.1.2","maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"homepage":"https://github.com/casoon/astro-speed-measure#readme","bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"dist":{"shasum":"a0d811c9d3bc9e7beab474a7bae258c659e78f85","tarball":"https://registry.npmjs.org/@casoon/astro-speed-measure/-/astro-speed-measure-0.1.2.tgz","fileCount":50,"integrity":"sha512-8Jv4VSQz1lu7icXBrJm0t0ZxqbimLhTb4D+FHMMqkmTU6YaQBYe0KB0BuzOoGCcBjS7krRFhPnpzkFxe2iExNw==","signatures":[{"sig":"MEQCIEXStSFLeM/y8n0ckWcieVLIhAxnxPeaykJzoAWEWgaLAiASo7Ezfu+5/MB8mQ6MrghYVT0QsnhVMgerLrt3H6/DCw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":57211},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"40afd3d0fd48052dde878fe5c56d9e1e8a9632c6","scripts":{"dev":"tsc --watch","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jseidel","email":"joern.seidel@casoon.de"},"repository":{"url":"git+https://github.com/casoon/astro-speed-measure.git","type":"git"},"_npmVersion":"11.6.2","description":"Build performance metrics for Astro","directories":{},"_nodeVersion":"24.11.1","dependencies":{"picocolors":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"astro":"^5.1.1","typescript":"^5.7.2","@types/node":"^22.10.1"},"peerDependencies":{"astro":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/astro-speed-measure_0.1.2_1765237464279_0.5579054677317843","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@casoon/astro-speed-measure","version":"0.1.3","keywords":["astro","astro-integration","performance","build","metrics"],"license":"MIT","_id":"@casoon/astro-speed-measure@0.1.3","maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"homepage":"https://github.com/casoon/astro-speed-measure#readme","bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"dist":{"shasum":"12ccd5837ab85310f2f5101ec59bc7373492efcc","tarball":"https://registry.npmjs.org/@casoon/astro-speed-measure/-/astro-speed-measure-0.1.3.tgz","fileCount":50,"integrity":"sha512-ZpKMP6ZOuDEhVWu92a0Q3/D2ArizRDI4pml3ZybuX4h03GnL/DB50xWcCYB6xt42/6Xb63ocAN4kDBciQkolOQ==","signatures":[{"sig":"MEQCIQCpOOw3bU+V/83xScajk83USvUAQ+bfuDyr2DcUKTFMWQIfPF3n+X8DbOIA66NgsGrILKOJnp/ScPPPZ8m+KaFWsw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":58117},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"182ce3d2c82d598b77fd3f75e2fc48b247c3a331","scripts":{"dev":"tsc --watch","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jseidel","email":"joern.seidel@casoon.de"},"repository":{"url":"git+https://github.com/casoon/astro-speed-measure.git","type":"git"},"_npmVersion":"11.6.2","description":"Build performance metrics for Astro","directories":{},"_nodeVersion":"24.11.1","dependencies":{"picocolors":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"astro":"^5.1.1","typescript":"^5.7.2","@types/node":"^22.10.1"},"peerDependencies":{"astro":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/astro-speed-measure_0.1.3_1765237856709_0.8362536512052121","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@casoon/astro-speed-measure","version":"0.1.4","keywords":["astro","astro-integration","performance","build","metrics"],"license":"MIT","_id":"@casoon/astro-speed-measure@0.1.4","maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"homepage":"https://github.com/casoon/astro-speed-measure#readme","bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"dist":{"shasum":"594329d4ee5ac2ec4bcb0edd72b085d569bcf82b","tarball":"https://registry.npmjs.org/@casoon/astro-speed-measure/-/astro-speed-measure-0.1.4.tgz","fileCount":50,"integrity":"sha512-s+903B7E/zCecf8PM/LSKcN6iWQO+XtDa215dWJUfcNvJ9q/lcvvicZkKLk/pcDuPNX1EU0f/jWOpHrLbc681Q==","signatures":[{"sig":"MEUCIQD4C+EmjXrd4RRJ86X7LmZN8QKqZoSglnY2LC9+QGiTuAIgH3xxJG6+hC/w+zPTxGP1hsyBi7q0qKhZrpS2dTrEHcQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":58650},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"04cb9ec5641c7c3002fb47794c44a940af5ff44e","scripts":{"dev":"tsc --watch","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jseidel","email":"joern.seidel@casoon.de"},"repository":{"url":"git+https://github.com/casoon/astro-speed-measure.git","type":"git"},"_npmVersion":"11.6.2","description":"Build performance metrics for Astro","directories":{},"_nodeVersion":"24.11.1","dependencies":{"picocolors":"^1.1.1"},"_hasShrinkwrap":false,"devDependencies":{"astro":"^5.1.1","typescript":"^5.7.2","@types/node":"^22.10.1"},"peerDependencies":{"astro":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/astro-speed-measure_0.1.4_1765238170304_0.6697424986741811","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@casoon/astro-speed-measure","version":"0.2.0","keywords":["astro","astro-integration","performance","build","metrics"],"author":{"name":"CASOON","email":"joern.seidel@casoon.de"},"license":"MIT","_id":"@casoon/astro-speed-measure@0.2.0","maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"homepage":"https://github.com/casoon/astro-speed-measure#readme","bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"dist":{"shasum":"b8966d7cdf66c5a9a1635830906439391a3db9b0","tarball":"https://registry.npmjs.org/@casoon/astro-speed-measure/-/astro-speed-measure-0.2.0.tgz","fileCount":51,"integrity":"sha512-JQTHC6tVKysz4z6iwc0ED07WWUEBZSj3/psgqf0AB8OYLBBPpWeibZsmJ3yniKcIVX9OmwWJF61lphWZo0ITwQ==","signatures":[{"sig":"MEQCIBfNXXH5aHEaq22oarsHDTfTwWgSKvyrmWKRQ5uMKv8YAiBkXqqMWvMZtB+fxQ7mtQUs8YhGJ/ZESUPGy4JkTMBbUw==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60146},"main":"./dist/index.js","type":"module","types":"./dist/index.d.ts","engines":{"node":"^18.17.1 || ^20.3.0 || >=22.0.0"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"755e12c538043511362308137d8eff9408585a13","scripts":{"dev":"tsc --watch","build":"tsc","prepublishOnly":"npm run build"},"_npmUser":{"name":"jseidel","email":"joern.seidel@casoon.de"},"repository":{"url":"git+https://github.com/casoon/astro-speed-measure.git","type":"git"},"_npmVersion":"11.6.2","description":"Build performance metrics for Astro","directories":{},"_nodeVersion":"24.11.1","dependencies":{"picocolors":"^1.1.1"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"astro":"^6.0.0-beta.15","typescript":"^5.7.2","@types/node":"^22.10.1"},"peerDependencies":{"astro":"^5.0.0 || ^6.0.0-beta.0 || ^6.0.0"},"_npmOperationalInternal":{"tmp":"tmp/astro-speed-measure_0.2.0_1772010838990_0.623218664609263","host":"s3://npm-registry-packages-npm-production"}},"0.4.0":{"name":"@casoon/astro-speed-measure","version":"0.4.0","description":"Build performance metrics for Astro","type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"scripts":{"build":"tsc","dev":"tsc --watch","prepublishOnly":"npm run build"},"keywords":["astro","astro-integration","performance","build","metrics"],"author":{"name":"CASOON","email":"joern.seidel@casoon.de"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/casoon/astro-speed-measure.git"},"bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"homepage":"https://github.com/casoon/astro-speed-measure#readme","engines":{"node":">=22.12.0"},"publishConfig":{"access":"public"},"peerDependencies":{"astro":"^5.0.0 || ^6.0.0 || ^7.0.0"},"dependencies":{"picocolors":"^1.1.1"},"devDependencies":{"@types/node":"^22.20.0","astro":"^7.0.0","typescript":"^5.9.3"},"gitHead":"755e12c538043511362308137d8eff9408585a13","_id":"@casoon/astro-speed-measure@0.4.0","_nodeVersion":"24.11.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-X42cKnAio1iWq5j/HYq/LK8PBw6Mnmk1eCy20Fm97uSf0f2ezRDZnadEq8iNJAst81Iyc25lMMOxwBWmhLlQMQ==","shasum":"a449b9c27484db7b7742a47e7d45434954981380","tarball":"https://registry.npmjs.org/@casoon/astro-speed-measure/-/astro-speed-measure-0.4.0.tgz","fileCount":54,"unpackedSize":60525,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBOQELkTVutv7w4iJtt+0nei5YE9Sm0NQKBNtx9siimKAiEAppNwxKmBV16KjVplUxGr67XJtq0gCaGSWfrpyemWA+w="}]},"_npmUser":{"name":"jseidel","email":"joern.seidel@casoon.de"},"directories":{},"maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/astro-speed-measure_0.4.0_1782204535616_0.19647096768764638"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-08T23:20:12.543Z","modified":"2026-06-23T08:48:55.870Z","0.1.0":"2025-12-08T23:20:12.807Z","0.1.1":"2025-12-08T23:25:23.681Z","0.1.2":"2025-12-08T23:44:24.420Z","0.1.3":"2025-12-08T23:50:56.845Z","0.1.4":"2025-12-08T23:56:10.489Z","0.2.0":"2026-02-25T09:13:59.138Z","0.4.0":"2026-06-23T08:48:55.746Z"},"bugs":{"url":"https://github.com/casoon/astro-speed-measure/issues"},"author":{"name":"CASOON","email":"joern.seidel@casoon.de"},"license":"MIT","homepage":"https://github.com/casoon/astro-speed-measure#readme","keywords":["astro","astro-integration","performance","build","metrics"],"repository":{"type":"git","url":"git+https://github.com/casoon/astro-speed-measure.git"},"description":"Build performance metrics for Astro","maintainers":[{"name":"jseidel","email":"joern.seidel@casoon.de"}],"readme":"# astro-speed-measure\n\nMeasure Astro build performance end-to-end. Wraps integrations and Vite plugins, aggregates per-page and asset timings, and emits human, JSON, or HTML reports.\n\n**Compatible with Astro v5, v6, and v7.**\n\nInspired by [speed-measure-webpack-plugin](https://github.com/stephencookdev/speed-measure-webpack-plugin).\n\n## Features\n\n- Track Astro integration hooks.\n- Time Vite plugin `resolveId`, `load`, `transform`, and `renderChunk`.\n- Aggregate per-page timing (SSG/SSR/API), asset timing (scripts, styles, images, fonts), and content collection work.\n- Output to console, JSON, or HTML; keep a JSON baseline for trend comparisons.\n- Budgets and CI summary (GitHub Actions `GITHUB_STEP_SUMMARY`).\n\n## Installation\n\n```bash\nnpm install @casoon/astro-speed-measure\n```\n\nRequires Astro `^5.0.0`, `^6.0.0`, or `^7.0.0` as a peer dependency. Node.js `>=22.12.0`.\n\n## Quick start\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      output: 'human',           // 'human' | 'json' | 'html' | function\n      outputFile: './metrics.json',\n      measurePages: true,\n      measureAssets: true,\n      measureContentCollections: true,\n      compareWithPrevious: true, // keep JSON for trend comparison\n      budgets: {\n        totalBuild: 15000,       // ms thresholds for warnings\n        page: 500,\n        integration: 1000,\n        plugin: 750,\n      },\n      verbose: false,\n    }),\n  ],\n});\n```\n\n## Options\n\n| Option | Type | Default | Description |\n|--------|------|---------|-------------|\n| `output` | `'human' \\| 'json' \\| 'html' \\| Function` | `'human'` | Output mode |\n| `outputFile` | `string` | `./astro-speed-measure-report.json` | Baseline file for JSON/HTML |\n| `disable` | `boolean` | `false` | Disable measurement entirely |\n| `measureIntegrations` | `boolean` | `true` | Measure Astro integrations |\n| `measureVitePlugins` | `boolean` | `true` | Measure Vite plugins (resolve/load/transform/renderChunk) |\n| `measurePages` | `boolean` | `true` | Aggregate per-page timings based on plugin transforms |\n| `measureAssets` | `boolean` | `true` | Collect timings for CSS/JS/fonts/images |\n| `measureContentCollections` | `boolean` | `true` | Collect timings for `src/content/*` |\n| `topPages` | `number` | `10` | Number of slowest pages to print |\n| `topAssets` | `number` | `10` | Number of slowest assets to print |\n| `compareWithPrevious` | `boolean` | `true` | Compare against last JSON report |\n| `budgets` | `object` | `{}` | Warn when build/page/integration/plugin exceeds budget (ms) |\n| `ciSummary` | `boolean` | `true` | Write summary to `GITHUB_STEP_SUMMARY` when available |\n| `verbose` | `boolean` | `false` | Show hook-level detail |\n| `thresholds` | `{ green?: number; yellow?: number }` | `{ green: 100, yellow: 1000 }` | Console coloring thresholds (ms) |\n\n## Outputs\n\n- **Console** (`output: 'human'`): human-friendly table with colored bars; add `verbose: true` for hook-level detail.\n- **JSON** (`output: 'json'`): persisted timing report, useful for trend comparisons and CI artifacts.\n- **HTML** (`output: 'html'`): standalone dark-mode report with tables for integrations, plugins, pages, assets, and content.\n- **Function** (`output: (report) => void`): receive the full `TimingReport` for custom handling.\n\n## Usage examples\n\n### Minimal setup\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [speedMeasure()],\n});\n```\n\n### JSON report for CI pipelines\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      output: 'json',\n      outputFile: './build-metrics.json',\n      ciSummary: true, // writes to GITHUB_STEP_SUMMARY\n    }),\n  ],\n});\n```\n\n### HTML report for detailed analysis\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      output: 'html',\n      outputFile: './speed-report.html',\n      topPages: 20,\n      topAssets: 20,\n    }),\n  ],\n});\n```\n\n### Build budgets with warnings\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      budgets: {\n        totalBuild: 30000,  // warn if total build exceeds 30s\n        page: 1000,         // warn if any page exceeds 1s\n        integration: 2000,  // warn if any integration exceeds 2s\n        plugin: 1500,       // warn if any plugin exceeds 1.5s\n      },\n    }),\n  ],\n});\n```\n\n### Custom output handler\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      output: (report) => {\n        // Send metrics to an external service\n        fetch('https://metrics.example.com/api/build', {\n          method: 'POST',\n          headers: { 'Content-Type': 'application/json' },\n          body: JSON.stringify(report),\n        });\n      },\n    }),\n  ],\n});\n```\n\n### Verbose mode for debugging\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      verbose: true, // show hook-level timing detail\n    }),\n  ],\n});\n```\n\n### Disable in development\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      disable: process.env.NODE_ENV !== 'production',\n    }),\n  ],\n});\n```\n\n### Trend comparison across builds\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      output: 'human',\n      outputFile: './metrics-baseline.json',\n      compareWithPrevious: true,\n    }),\n  ],\n});\n```\n\n### Focus on specific metrics\n\n```js\n// astro.config.mjs\nimport { defineConfig } from 'astro/config';\nimport speedMeasure from '@casoon/astro-speed-measure';\n\nexport default defineConfig({\n  integrations: [\n    speedMeasure({\n      measureIntegrations: true,\n      measureVitePlugins: false,\n      measurePages: true,\n      measureAssets: false,\n      measureContentCollections: false,\n    }),\n  ],\n});\n```\n\n## TypeScript\n\n`TimingReport`, `TimingSample`, and `SpeedMeasureOptions` are exported for use in custom output handlers:\n\n```ts\nimport type { TimingReport } from '@casoon/astro-speed-measure';\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}