feat: add Vercel Analytics to web and playground apps

- Install @vercel/analytics in both apps
- Add <Analytics /> component to root layouts
- Enables automatic page view tracking on Vercel
This commit is contained in:
Ajax Davis 2025-12-17 11:04:02 +10:00
parent 6ccb5fbd79
commit d2b22201aa
5 changed files with 44 additions and 0 deletions

View file

@ -20,6 +20,7 @@
"@tpmjs/types": "workspace:*",
"@tpmjs/ui": "workspace:*",
"@tpmjs/utils": "workspace:*",
"@vercel/analytics": "^1.6.1",
"ai": "6.0.0-beta.124",
"firecrawl-aisdk": "^0.7.2",
"nanoid": "^5.1.6",

View file

@ -1,3 +1,4 @@
import { Analytics } from '@vercel/analytics/next';
import type { Metadata } from 'next';
import { ThemeProvider } from 'next-themes';
import { Space_Grotesk, Space_Mono } from 'next/font/google';
@ -36,6 +37,7 @@ export default function RootLayout({
<ThemeProvider attribute="class" defaultTheme="light" enableSystem={false}>
{children}
</ThemeProvider>
<Analytics />
</body>
</html>
);

View file

@ -21,6 +21,7 @@
"@tpmjs/utils": "workspace:*",
"@types/d3": "^7.4.3",
"@types/react-syntax-highlighter": "^15.5.13",
"@vercel/analytics": "^1.6.1",
"ai": "6.0.0-beta.124",
"bm25": "^0.1.1",
"d3": "^7.9.0",

View file

@ -1,3 +1,4 @@
import { Analytics } from '@vercel/analytics/next';
import type { Metadata } from 'next';
import { Space_Grotesk, Space_Mono } from 'next/font/google';
import Script from 'next/script';
@ -160,6 +161,7 @@ export default function RootLayout({
<AppFooter />
</div>
</ThemeProvider>
<Analytics />
</body>
</html>
);

38
pnpm-lock.yaml generated
View file

@ -74,6 +74,9 @@ importers:
'@tpmjs/utils':
specifier: workspace:*
version: link:../../packages/utils
'@vercel/analytics':
specifier: ^1.6.1
version: 1.6.1(next@16.0.8(@opentelemetry/api@1.9.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react@19.2.0)
ai:
specifier: 6.0.0-beta.124
version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13)
@ -186,6 +189,9 @@ importers:
'@types/react-syntax-highlighter':
specifier: ^15.5.13
version: 15.5.13
'@vercel/analytics':
specifier: ^1.6.1
version: 1.6.1(next@16.0.8(@opentelemetry/api@1.9.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react@19.2.0)
ai:
specifier: 6.0.0-beta.124
version: 6.0.0-beta.124(effect@3.18.4)(zod@4.1.13)
@ -2783,6 +2789,32 @@ packages:
cpu: [x64]
os: [win32]
'@vercel/analytics@1.6.1':
resolution: {integrity: sha512-oH9He/bEM+6oKlv3chWuOOcp8Y6fo6/PSro8hEkgCW3pu9/OiCXiUpRUogDh3Fs3LH2sosDrx8CxeOLBEE+afg==}
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
'@vercel/oidc@3.0.5':
resolution: {integrity: sha512-fnYhv671l+eTTp48gB4zEsTW/YtRgRPnkI2nT7x6qw5rkI1Lq2hTmQIpHPgyThI0znLK+vX2n9XxKdXZ7BUbbw==}
engines: {node: '>= 20'}
@ -4950,6 +4982,7 @@ packages:
next@16.0.8:
resolution: {integrity: sha512-LmcZzG04JuzNXi48s5P+TnJBsTGPJunViNKV/iE4uM6kstjTQsQhvsAv+xF6MJxU2Pr26tl15eVbp0jQnsv6/g==}
engines: {node: '>=20.9.0'}
deprecated: This version has a security vulnerability. Please upgrade to a patched version. See https://nextjs.org/blog/security-update-2025-12-11 for more details.
hasBin: true
peerDependencies:
'@opentelemetry/api': ^1.1.0
@ -8349,6 +8382,11 @@ snapshots:
'@unrs/resolver-binding-win32-x64-msvc@1.11.1':
optional: true
'@vercel/analytics@1.6.1(next@16.0.8(@opentelemetry/api@1.9.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0))(react@19.2.0)':
optionalDependencies:
next: 16.0.8(@babel/core@7.28.5)(@opentelemetry/api@1.9.0)(react-dom@19.2.0(react@19.2.0))(react@19.2.0)
react: 19.2.0
'@vercel/oidc@3.0.5': {}
'@vitest/expect@2.0.5':