Theme
← Blocks
Home Screens
Named application home-screen packs for dashboards, launch centers, and workspaces.
Preview
Open in new tabHome screen pack
Ship a real app home screen instead of a blank dashboard canvas.
The home-screen pack combines navigation shell, page header, KPI cards, and action surfaces.
6
dashboard cards
3
queue blocks
2
context rails
| Section | Priority | State |
|---|---|---|
| Approvals | High | 6 pending |
| Launch readiness | High | 2 blockers |
| Recent events | Medium | Live |
- Ships with
- KPI rows, queue surfaces, alerts, and action clusters.
Variants
Launch center
Home screen for launches, approvals, and rollout health.
Ops dashboard
Analytics-first home surface with queues and alerts.
Workspace home
Task and context-led home layout.
Source
Copy this source into your app and own it. The theme imports are already included.
svelte
<script lang="ts">
import '@dryui/ui/themes/default.css';
import '@dryui/ui/themes/dark.css';
import { AppBar, Card, DescriptionList, Fieldset, Heading, PageHeader, PageLayout, Sidebar, Stack, Table, Text } from '@dryui/ui';
</script>
<PageLayout.Root fullHeight>
<PageLayout.Header sticky>
<AppBar.Root>
<AppBar.Title>Home screen pack</AppBar.Title>
</AppBar.Root>
</PageLayout.Header>
<PageLayout.Sidebar sticky>
<Sidebar.Root style="height: 100%;">
<Sidebar.Content>
<Sidebar.Group>
<Sidebar.GroupLabel>Navigation</Sidebar.GroupLabel>
<Sidebar.Item active href="#">Launches</Sidebar.Item>
<Sidebar.Item href="#">Approvals</Sidebar.Item>
<Sidebar.Item href="#">Billing</Sidebar.Item>
<Sidebar.Item href="#">People</Sidebar.Item>
</Sidebar.Group>
</Sidebar.Content>
</Sidebar.Root>
</PageLayout.Sidebar>
<PageLayout.Content>
<Stack gap="lg">
<PageHeader.Root>
<PageHeader.Content>
<PageHeader.Title level={1}>Ship a real app home screen instead of a blank dashboard canvas.</PageHeader.Title>
<PageHeader.Description>The home-screen pack combines navigation shell, page header, KPI cards, and action surfaces.</PageHeader.Description>
</PageHeader.Content>
</PageHeader.Root>
<Grid columns={3} gap="md">
<Card.Root>
<Card.Content>
<Heading level={3}>6</Heading>
<Text as="p">dashboard cards</Text>
</Card.Content>
</Card.Root>
<Card.Root>
<Card.Content>
<Heading level={3}>3</Heading>
<Text as="p">queue blocks</Text>
</Card.Content>
</Card.Root>
<Card.Root>
<Card.Content>
<Heading level={3}>2</Heading>
<Text as="p">context rails</Text>
</Card.Content>
</Card.Root>
</Grid>
<Table.Root>
<Table.Header>
<Table.Row>
<Table.Head>Section</Table.Head>
<Table.Head>Priority</Table.Head>
<Table.Head>State</Table.Head>
</Table.Row>
</Table.Header>
<Table.Body>
<Table.Row>
<Table.Cell>Approvals</Table.Cell>
<Table.Cell>High</Table.Cell>
<Table.Cell>6 pending</Table.Cell>
</Table.Row>
<Table.Row>
<Table.Cell>Launch readiness</Table.Cell>
<Table.Cell>High</Table.Cell>
<Table.Cell>2 blockers</Table.Cell>
</Table.Row>
<Table.Row>
<Table.Cell>Recent events</Table.Cell>
<Table.Cell>Medium</Table.Cell>
<Table.Cell>Live</Table.Cell>
</Table.Row>
</Table.Body>
</Table.Root>
<DescriptionList.Root>
<DescriptionList.Item>
<DescriptionList.Term>Ships with</DescriptionList.Term>
<DescriptionList.Description>KPI rows, queue surfaces, alerts, and action clusters.</DescriptionList.Description>
</DescriptionList.Item>
</DescriptionList.Root>
<Fieldset.Root>
<Fieldset.Legend>Included patterns</Fieldset.Legend>
<Fieldset.Content>
<Text as="p">• Header + KPI row</Text>
<Text as="p">• Queue summary</Text>
<Text as="p">• Context rail</Text>
</Fieldset.Content>
</Fieldset.Root>
</Stack>
</PageLayout.Content>
</PageLayout.Root>