- pnpm workspace: apps/{web,server}, packages/{contracts,db,domain,adapters,tasks,agent,testkit}
- server: Hono + zod-openapi, API Key auth with scopes, redacting pino logger, SSE event bus with replay, worker heartbeat
- db: Kysely + pg, file migrator, 0001_init (settings/api_key/audit_event/outbox_event)
- web: React Router 7 SPA console shell with 12 workspace placeholders, uhd_web tokens/ui/guard scripts
- docs: ADR-001 (Node over Deno), dev runbook, design system rules
Co-Authored-By: Claude Fable 5.1 <[email protected]>
69 lines
1.2 KiB
TypeScript
69 lines
1.2 KiB
TypeScript
// 由 scripts/gen-design-tokens.mjs 从 app/app.css 生成,不要手改;改了 app.css 跑 pnpm gen:tokens
|
|
export const DESIGN_TOKENS = {
|
|
"fontSizes": [
|
|
"micro",
|
|
"label",
|
|
"meta",
|
|
"caption",
|
|
"body",
|
|
"control",
|
|
"lead",
|
|
"lead-lg",
|
|
"title-xs",
|
|
"title-sm",
|
|
"title",
|
|
"title-lg",
|
|
"headline-xs",
|
|
"headline-sm",
|
|
"headline",
|
|
"headline-lg",
|
|
"display-xs",
|
|
"display-sm",
|
|
"display",
|
|
"display-lg",
|
|
"display-xl",
|
|
"hero-stream",
|
|
"hero-stream-sm",
|
|
"hero-stream-md",
|
|
"detail-title",
|
|
"notfound-code",
|
|
"pricing-hero",
|
|
"pricing-title",
|
|
"auth-title",
|
|
"landing-hero",
|
|
"landing-platforms-title",
|
|
"landing-immersive-title",
|
|
"landing-service-hero",
|
|
"landing-service-title",
|
|
"landing-service-title-lg",
|
|
"landing-service-sub"
|
|
],
|
|
"eases": [
|
|
"standard",
|
|
"spring",
|
|
"spring-soft",
|
|
"sheet",
|
|
"pop"
|
|
],
|
|
"radii": [
|
|
"sm",
|
|
"md",
|
|
"lg",
|
|
"xl",
|
|
"2xl",
|
|
"3xl",
|
|
"4xl",
|
|
"tight",
|
|
"drawer",
|
|
"slab"
|
|
],
|
|
"durations": [
|
|
"micro",
|
|
"base",
|
|
"layout",
|
|
"slow",
|
|
"hero",
|
|
"cinematic"
|
|
]
|
|
} as const;
|