Package Exports
- @studiocms/web-vitals
- @studiocms/web-vitals/client-script
- @studiocms/web-vitals/db-config
- @studiocms/web-vitals/endpoint
- @studiocms/web-vitals/middleware
Readme
@studiocms/web-vitals
This Astro integration enables tracking real-world website performance and storing the data in Astro DB.
@studiocms/web-vitals is a fork of the @astrojs/web-vitals package originally provided by the WithAstro organization for the Astro Studio product offering they have since sunset. StudioCMS was asked to takeover this package due to our integration of this package within StudioCMS for vitals and analytics reporting.
Pre-requisites
- Astro DB —
@studiocms/web-vitalswill store performance data in Astro DB in production - An SSR adapter —
@studiocms/web-vitalsinjects a server endpoint to manage saving data to Astro DB
Installation
Install and configure the Web Vitals integration using
astro add:npx astro add @studiocms/web-vitalsPush the tables added by the Web Vitals integration to Astro DB Database:
npx astro db push
Redeploy your site.
Your data will now be stored within your db!
Learn more about Astro DB in the Astro docs.
Migrating from @astrojs/web-vitals
Migrating is super easy, just replace the entries in your package.json and astro.config.* files with the new name @studiocms/web-vitals and your good to go! We have not changed any of the table structures or variables as it's simply not needed as this project worked perfectly beforehand.
Uninstalling
To remove the Web Vitals integration, follow the Astro DB deprecation process:
Mark the integration as deprecated in
astro.config.mjs, by setting thedeprecatedoption totrue:import db from '@astrojs/db'; import webVitals from '@studiocms/web-vitals'; import { defineConfig } from 'astro/config'; export default defineConfig({ integrations: [ db(), // Mark the web vitals integration as deprecated: webVitals({ deprecated: true }), ], // ... });
Push the deprecation to Astro DB Database:
npx astro db push
Remove the web vitals integration in
astro.config.mjs:import db from '@astrojs/db'; - import webVitals from '@studiocms/web-vitals'; import { defineConfig } from 'astro/config'; export default defineConfig({ integrations: [ db(), - webVitals({ deprecated: true }), ], // ... });Push the table deletion to Astro DB Database:
npx astro db push
Support
Get help in the StudioCMS Discord. Post questions in our
#supportforum, or visit our dedicated#contributechannel to discuss current development and more!Check the Astro Integration Documentation for more on integrations.
Submit bug reports and feature requests as GitHub issues.
License
MIT
Copyright (c) 2023–present Astro - Modified by StudioCMS 2025