mirror of
https://github.com/hanzo-apps/hanzo.ai.git
synced 2026-10-28 07:32:52 +00:00
The share card offers Hanzo, the products and the betas the member asked for, the rest under More by group. A topic picks the posts Shuffle offers, the link (/beta/for/<topic>, tagged utm_content) and the card it unfurls to: that page carries the topic's title, line and card, a canonical naming itself and the one noindex (lib/publish SHARES), and sends a person on to /beta with the query kept, so ref and the campaign land as before. lib/hanzo/topics is the list, its words the site's and BETAS's own. generate-og draws a card per topic from it, palette-quantized with sharp: 49 cards, 2.9 MB. The cards gate reads every card's rendered words. Claude-Session: https://claude.ai/code/session_017vrVus6PPBgP5YRzKV1iqW
95 lines
3.0 KiB
JSON
95 lines
3.0 KiB
JSON
{
|
|
"name": "@hanzo/site",
|
|
"private": true,
|
|
"engines": {
|
|
"node": ">=22.18"
|
|
},
|
|
"version": "0.2.31",
|
|
"type": "module",
|
|
"scripts": {
|
|
"dev": "next dev",
|
|
"build": "next build && node scripts/export.mjs",
|
|
"typecheck": "tsc --noEmit",
|
|
"start": "next start",
|
|
"serve": "node scripts/serve.mjs out 5173",
|
|
"lint": "oxlint",
|
|
"test": "playwright test",
|
|
"test:unit": "playwright test --project=unit",
|
|
"gates": "playwright test --project=gates",
|
|
"test:ui": "playwright test --ui",
|
|
"test:headed": "playwright test --headed",
|
|
"test:report": "playwright show-report",
|
|
"gen:gui-css": "node scripts/gen-gui-css.mjs",
|
|
"css-check": "node node_modules/@hanzo/gui/css-check.mjs out",
|
|
"prebuild": "node scripts/prebuild.ts",
|
|
"predev": "node scripts/gen-gui-css.mjs && node scripts/rooms-assets.mjs",
|
|
"sync:catalog": "node scripts/sync-catalog.mjs",
|
|
"sync:papers": "node scripts/sync-papers.mjs",
|
|
"sync:oss": "node scripts/sync-oss.ts",
|
|
"sync:mark": "node scripts/sync-mark.mjs",
|
|
"sync:pages": "node scripts/sync-rooms.mjs && node scripts/sync-pages.mjs",
|
|
"audit:catalog": "node scripts/audit-catalog.mjs",
|
|
"audit:price": "node scripts/audit-price-literals.mjs",
|
|
"lint:design": "hanzo-design-lint components app lib",
|
|
"ratchet": "node scripts/ratchet.ts"
|
|
},
|
|
"dependencies": {
|
|
"@hanzo/ai": "catalog:",
|
|
"@hanzo/app": "catalog:",
|
|
"@hanzo/appearance": "catalog:",
|
|
"@hanzo/brand": "catalog:",
|
|
"@hanzo/build": "catalog:",
|
|
"@hanzo/composer": "catalog:",
|
|
"@hanzo/design": "catalog:",
|
|
"@hanzo/event": "catalog:",
|
|
"@hanzo/font": "^1.9.3",
|
|
"@hanzo/glass": "catalog:",
|
|
"@hanzo/gui": "catalog:",
|
|
"@hanzo/i18n": "catalog:",
|
|
"@hanzo/iam": "catalog:",
|
|
"@hanzo/logo": "catalog:",
|
|
"@hanzo/mod": "catalog:",
|
|
"@hanzo/observe": "catalog:",
|
|
"@hanzo/pay": "catalog:",
|
|
"@hanzo/plans": "catalog:",
|
|
"@hanzo/studio": "catalog:",
|
|
"@hanzo/tabs": "catalog:",
|
|
"@hanzo/tokens": "catalog:",
|
|
"@hanzo/ui": "catalog:",
|
|
"@hanzo/usage": "catalog:",
|
|
"@hanzo/voice": "catalog:",
|
|
"@hanzogui/config": "8.3.5",
|
|
"@hanzogui/lucide-icons-2": "8.3.5",
|
|
"@hanzogui/next-theme": "catalog:",
|
|
"@hanzogui/shell": "8.3.20",
|
|
"@hanzogui/web": "8.3.5",
|
|
"@zenlm/models": "^1.0.4",
|
|
"framer-motion": "^13.2.0",
|
|
"lucide-react": "^1.42.0",
|
|
"marked": "^18.0.12",
|
|
"next": "catalog:",
|
|
"react": "catalog:",
|
|
"react-dom": "catalog:",
|
|
"react-native-web": "^0.21.2",
|
|
"shiki": "^4.5.0",
|
|
"uuid": "^14.0.2"
|
|
},
|
|
"devDependencies": {
|
|
"@hanzo/personas": "1.0.5",
|
|
"@hanzogui/animations-css": "8.3.5",
|
|
"@hanzogui/core": "8.3.5",
|
|
"@hanzogui/telemetry": "8.3.5",
|
|
"@hanzogui/toast": "8.3.5",
|
|
"@playwright/test": "^1.63.0",
|
|
"@types/node": "catalog:",
|
|
"@types/react": "catalog:",
|
|
"@types/react-dom": "catalog:",
|
|
"esbuild": "^0.28.2",
|
|
"oxlint": "^1.82.0",
|
|
"sharp": "0.35.4",
|
|
"simple-icons": "^16.30.0",
|
|
"typescript": "catalog:"
|
|
},
|
|
"packageManager": "[email protected]"
|
|
}
|