- 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]>
20 lines
574 B
TypeScript
20 lines
574 B
TypeScript
import { Link } from "react-router";
|
|
import { EmptyState } from "~/components/console/empty-state";
|
|
import { buttonVariants } from "~/components/ui/button";
|
|
|
|
export default function NotFound() {
|
|
return (
|
|
<div className="grid min-h-screen place-items-center bg-background px-4">
|
|
<EmptyState
|
|
title="页面不存在"
|
|
description="检查地址是否正确,或回到首页。"
|
|
action={
|
|
<Link to="/" className={buttonVariants({ variant: "outline" })}>
|
|
回到首页
|
|
</Link>
|
|
}
|
|
/>
|
|
</div>
|
|
);
|
|
}
|