diff --git a/site/package-lock.json b/site/package-lock.json
index 600898f..cc95273 100644
--- a/site/package-lock.json
+++ b/site/package-lock.json
@@ -10,6 +10,7 @@
"dependencies": {
"@astrojs/vercel": "^10.0.8",
"@fontsource/oswald": "^5.2.8",
+ "@vercel/analytics": "^2.0.1",
"astro": "^6.4.4",
"resend": "^6.12.4"
},
@@ -227,6 +228,44 @@
"astro": "^6.0.0"
}
},
+ "node_modules/@astrojs/vercel/node_modules/@vercel/analytics": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.6.1.tgz",
+ "integrity": "sha512-oH9He/bEM+6oKlv3chWuOOcp8Y6fo6/PSro8hEkgCW3pu9/OiCXiUpRUogDh3Fs3LH2sosDrx8CxeOLBEE+afg==",
+ "license": "MPL-2.0",
+ "peerDependencies": {
+ "@remix-run/react": "^2",
+ "@sveltejs/kit": "^1 || ^2",
+ "next": ">= 13",
+ "react": "^18 || ^19 || ^19.0.0-rc",
+ "svelte": ">= 4",
+ "vue": "^3",
+ "vue-router": "^4"
+ },
+ "peerDependenciesMeta": {
+ "@remix-run/react": {
+ "optional": true
+ },
+ "@sveltejs/kit": {
+ "optional": true
+ },
+ "next": {
+ "optional": true
+ },
+ "react": {
+ "optional": true
+ },
+ "svelte": {
+ "optional": true
+ },
+ "vue": {
+ "optional": true
+ },
+ "vue-router": {
+ "optional": true
+ }
+ }
+ },
"node_modules/@astrojs/yaml2ts": {
"version": "0.2.4",
"resolved": "https://registry.npmjs.org/@astrojs/yaml2ts/-/yaml2ts-0.2.4.tgz",
@@ -2159,14 +2198,15 @@
"license": "ISC"
},
"node_modules/@vercel/analytics": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-1.6.1.tgz",
- "integrity": "sha512-oH9He/bEM+6oKlv3chWuOOcp8Y6fo6/PSro8hEkgCW3pu9/OiCXiUpRUogDh3Fs3LH2sosDrx8CxeOLBEE+afg==",
- "license": "MPL-2.0",
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@vercel/analytics/-/analytics-2.0.1.tgz",
+ "integrity": "sha512-MTQG6V9qQrt1tsDeF+2Uoo5aPjqbVPys1xvnIftXSJYG2SrwXRHnqEvVoYID7BTruDz4lCd2Z7rM1BdkUehk2g==",
+ "license": "MIT",
"peerDependencies": {
"@remix-run/react": "^2",
"@sveltejs/kit": "^1 || ^2",
"next": ">= 13",
+ "nuxt": ">= 3",
"react": "^18 || ^19 || ^19.0.0-rc",
"svelte": ">= 4",
"vue": "^3",
@@ -2182,6 +2222,9 @@
"next": {
"optional": true
},
+ "nuxt": {
+ "optional": true
+ },
"react": {
"optional": true
},
diff --git a/site/package.json b/site/package.json
index f8b249b..7fc6e0f 100644
--- a/site/package.json
+++ b/site/package.json
@@ -16,6 +16,7 @@
"dependencies": {
"@astrojs/vercel": "^10.0.8",
"@fontsource/oswald": "^5.2.8",
+ "@vercel/analytics": "^2.0.1",
"astro": "^6.4.4",
"resend": "^6.12.4"
},
diff --git a/site/src/layouts/BaseLayout.astro b/site/src/layouts/BaseLayout.astro
index 8a6d9e1..0e87bff 100644
--- a/site/src/layouts/BaseLayout.astro
+++ b/site/src/layouts/BaseLayout.astro
@@ -2,6 +2,7 @@
import { ClientRouter } from 'astro:transitions';
import Header from '../components/Header.astro';
import Footer from '../components/Footer.astro';
+import Analytics from '@vercel/analytics/astro';
import '../styles/global.css';
interface Props {
@@ -71,5 +72,6 @@ const canonical = Astro.url.href;
)
}
+