Files
docs/apps/engine-docs/package.json
T
zeekayandHanzo Dev eec172cbc2 feat(analytics): every docs site on the ONE /v1/event door, not the Umami tag
The <script src="analytics.hanzo.ai/script.js" data-website-id> tag is a shim:
it talks to a read LENS instead of the one ingestion front door, so a docs site
could only ever produce pageviews — no errors, no product events, and a separate
per-site id to keep in sync. Replaced across all 12 sites with @hanzo/event
POSTing api.hanzo.ai/v1/event, which Cloud fans server-side into the web
(analytics), product (insights) and error (sentry) lenses. `product` is the only
per-site knob; Cloud resolves the tenant, so no site carries an id any more.

One implementation, not twelve: packages/analytics (@hanzo/docs-analytics)
mounts the provider, adds a pageview per client-side route change, and honors
Global Privacy Control / Do-Not-Track by disabling the client outright. The main
hub's inline Insights snippet goes too — that lens is already fed by the one
stream.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-25 13:34:22 -07:00

63 lines
1.9 KiB
JSON

{
"name": "engine-docs",
"version": "0.1.1",
"private": true,
"scripts": {
"build": "pnpm build:pre && next build --webpack && pnpm build:post",
"build:pre": "bun ./scripts/pre-build.ts",
"build:post": "bun ./scripts/post-build.ts",
"types:check": "@hanzo/docs-mdx && next typegen && tsc --noEmit",
"clean": "rimraf .next",
"dev": "next dev --port 3005 --webpack",
"lint": "@hanzo/docs-mdx && eslint .",
"start": "next start"
},
"dependencies": {
"@hanzo/docs-analytics": "workspace:*",
"@ai-sdk/react": "^3.0.79",
"@hanzo/docs": "workspace:*",
"@hanzo/docs-base-ui": "workspace:*",
"@hanzo/docs-core": "workspace:*",
"@hanzo/docs-mdx": "workspace:*",
"@hanzo/logo": "^1.0.5",
"@hanzo/mdx-runtime": "workspace:*",
"@radix-ui/react-presence": "^1.1.5",
"@radix-ui/react-tooltip": "^1.2.8",
"@shikijs/rehype": "^3.21.0",
"@shikijs/transformers": "^3.21.0",
"ai": "^6.0.77",
"class-variance-authority": "^0.7.1",
"hast-util-to-jsx-runtime": "^2.3.6",
"lucide-react": "^0.562.0",
"next": "16.1.6",
"next-themes": "^0.4.6",
"react": "^19.2.3",
"react-dom": "^19.2.3",
"remark": "^15.0.1",
"remark-gfm": "^4.0.1",
"remark-rehype": "^11.1.2",
"shiki": "^3.21.0",
"tailwind-merge": "^3.4.0",
"unist-util-visit": "^5.1.0",
"zod": "^4.3.5"
},
"devDependencies": {
"@hanzo/docs-cli": "workspace:*",
"@next/bundle-analyzer": "16.1.1",
"@next/env": "16.1.1",
"@next/eslint-plugin-next": "16.1.1",
"@tailwindcss/postcss": "^4.1.18",
"@types/node": "25.0.5",
"@types/react": "^19.2.8",
"@types/react-dom": "^19.2.3",
"browserslist-config-baseline": "^0.5.0",
"postcss": "^8.5.6",
"tailwindcss": "^4.1.18",
"tailwindcss-animate": "^1.0.7",
"tsconfig": "workspace:*",
"typescript": "^5.9.3"
},
"browserslist": [
"extends browserslist-config-baseline/2024"
]
}