diff --git a/app/layout.tsx b/app/layout.tsx
index 8173867..3b079c1 100644
--- a/app/layout.tsx
+++ b/app/layout.tsx
@@ -1,4 +1,5 @@
import type { Metadata } from 'next'
+import { SpeedInsights } from '@vercel/speed-insights/next'
import './globals.css'
export const metadata: Metadata = {
@@ -13,7 +14,10 @@ export default function RootLayout({
}) {
return (
-
{children}
+
+ {children}
+
+
)
}
diff --git a/package-lock.json b/package-lock.json
index 5d6f525..3147cc0 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,6 +16,7 @@
"@fontsource/space-grotesk": "^5.2.10",
"@fontsource/space-mono": "^5.2.9",
"@fontsource/vt323": "^5.2.7",
+ "@vercel/speed-insights": "^1.3.1",
"fflate": "^0.8.2",
"framer-motion": "^12.31.0",
"gifenc": "^1.0.3",
@@ -345,6 +346,40 @@
"@types/react": "^18.0.0"
}
},
+ "node_modules/@vercel/speed-insights": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/@vercel/speed-insights/-/speed-insights-1.3.1.tgz",
+ "integrity": "sha512-PbEr7FrMkUrGYvlcLHGkXdCkxnylCWePx7lPxxq36DNdfo9mcUjLOmqOyPDHAOgnfqgGGdmE3XI9L/4+5fr+vQ==",
+ "license": "Apache-2.0",
+ "peerDependencies": {
+ "@sveltejs/kit": "^1 || ^2",
+ "next": ">= 13",
+ "react": "^18 || ^19 || ^19.0.0-rc",
+ "svelte": ">= 4",
+ "vue": "^3",
+ "vue-router": "^4"
+ },
+ "peerDependenciesMeta": {
+ "@sveltejs/kit": {
+ "optional": true
+ },
+ "next": {
+ "optional": true
+ },
+ "react": {
+ "optional": true
+ },
+ "svelte": {
+ "optional": true
+ },
+ "vue": {
+ "optional": true
+ },
+ "vue-router": {
+ "optional": true
+ }
+ }
+ },
"node_modules/busboy": {
"version": "1.6.0",
"resolved": "https://registry.npmmirror.com/busboy/-/busboy-1.6.0.tgz",
diff --git a/package.json b/package.json
index 5281c3c..650b86e 100644
--- a/package.json
+++ b/package.json
@@ -17,6 +17,7 @@
"@fontsource/space-grotesk": "^5.2.10",
"@fontsource/space-mono": "^5.2.9",
"@fontsource/vt323": "^5.2.7",
+ "@vercel/speed-insights": "^1.3.1",
"fflate": "^0.8.2",
"framer-motion": "^12.31.0",
"gifenc": "^1.0.3",