import { useEffect, useState } from "react"; import { StableJsonViewer } from "../design/components/StableJsonViewer"; import { EpistemicState, EpistemicStateBadge, GroundingSource, GroundingSourceBadge, NormativeClearance, NormativeClearanceBadge, ReviewState, ReviewStateBadge, TraceHashBadge, } from "../design/components/badges"; import { Button } from "../design/components/primitives/Button"; import { CommandPalette } from "../design/components/primitives/CommandPalette"; import { EmptyState } from "../design/components/states/EmptyState"; import { ErrorState } from "../design/components/states/ErrorState"; import { LoadingState } from "../design/components/states/LoadingState"; import { SplitPane } from "../design/components/SplitPane/SplitPane"; import { TabBar } from "../design/components/TabBar/TabBar"; import { MetadataTable } from "../design/components/MetadataTable/MetadataTable"; import { DigestBadge } from "../design/components/DigestBadge/DigestBadge"; import { Timestamp } from "../design/components/Timestamp/Timestamp"; import { SearchInput } from "../design/components/SearchInput/SearchInput"; import { Kbd } from "../design/components/primitives/Kbd"; import { Panel } from "../design/components/Panel/Panel"; import { VirtualizedList } from "../design/components/VirtualizedList/VirtualizedList"; export function PreviewPage() { const [paletteOpen, setPaletteOpen] = useState(false); const [activeTab, setActiveTab] = useState("surfaces"); const [searchValue, setSearchValue] = useState(""); useEffect(() => { const onKeyDown = (event: KeyboardEvent) => { if ((event.metaKey || event.ctrlKey) && event.key.toLowerCase() === "k") { event.preventDefault(); setPaletteOpen(true); } if (event.key === "Escape") setPaletteOpen(false); }; window.addEventListener("keydown", onKeyDown); return () => window.removeEventListener("keydown", onKeyDown); }, []); return (

CORE Workbench Design System v1

Static Branch 1 substrate preview. No backend, no API client, no runtime mutation surface.

Primitives

Badges

{Object.values(EpistemicState).map((value) => )} {Object.values(NormativeClearance).map((value) => )} {Object.values(ReviewState).map((value) => )} {Object.values(GroundingSource).map((value) => )}

States

SplitPane

Left pane (35%)
Right pane (65%)
Top pane (40%)
Bottom pane (60%)

TabBar

Active tab: {activeTab}

MetadataTable

DigestBadge

Timestamp

both (default)
relative
absolute
yesterday

SearchInput

{searchValue && (

Filtering: “{searchValue}”

)}

Stable JSON Viewer

Kbd

Press \u2318K for the palette, j / k to move, Enter to open.

Panel

/}>

Panel body content.

VirtualizedList (1,000 rows)

`turn-${i}`)} getKey={(item) => item} renderItem={(item, _i, focused) => (
{item}
)} estimateSize={28} height={160} ariaLabel="Preview virtual list" />
); }