Mail Client Shell
Application frame of an email client with folders, labels, saved searches and a compose button.
Choose the primitives library your project already uses. Both look the same: your theme, not the variant, controls colors, shape, type and motion.
About this layout
What it's for
- Application frame of an email client with folders, labels, saved searches and a compose button.
- Signed-in mail shell with a command palette, a keyboard shortcuts sheet and a docked compose window.
Includes
- Folder sidebar
- Label sidebar
- Unread counters
- Saved search links
- Top bar search
- Docked compose window
- Command palette
- Shortcuts cheat sheet
Works with
- Radix UI and Base UI primitives (pick the one your project uses)
- React 19 and Tailwind CSS 4 in Next.js (App Router), Vite, React Router or TanStack Start, installed with the agentic-ui or shadcn CLI
- Your theme tokens, in light and dark mode
- 1 template or blueprint on this site use it (below)
Install
Included with Agentic UI Kit (one-time license). Install needs your license key: see pricing · connect your project.
Agentic UI CLI
agentic-ui add mail-client-shellInstalls through shadcn and adapts the component to your design tokens.
shadcn CLI
npx shadcn@4.17.0 add @agentic-ui/mail-client-shellUsed in
- Type
- Layout
- Variants
- Radix UI and Base UI
- Themes
- Light and dark
- Widths
- Preview it at desktop, tablet and mobile widths above.
- Motion
- Animated, with a reduced-motion fallback
- Sample data
- Ships with sample data in
incoming.ts,people.ts,dsl.ts,seed.ts,story-ops.ts,story-clients.ts,bulk.ts; replace it with your own.
- npm packages
lucide-react- Registry dependencies
editor-rich-text-tiptapform-tag-inputlib-primitiveslib-tokensmotion-command-palette-springutil-shortcuts-overlay- Files
42 files
- components/agentic-ui/mail-client-shell/components/app-shell.tsx
- components/agentic-ui/mail-client-shell/lib/selectors.ts
- components/agentic-ui/mail-client-shell/lib/types.ts
- components/agentic-ui/mail-client-shell/lib/snooze.ts
- components/agentic-ui/mail-client-shell/lib/clock.ts
- components/agentic-ui/mail-client-shell/lib/recipients.ts
- components/agentic-ui/mail-client-shell/lib/markdown.ts
- components/agentic-ui/mail-client-shell/lib/store.ts
- components/agentic-ui/mail-client-shell/lib/reducer.ts
- components/agentic-ui/mail-client-shell/lib/rules.ts
- components/agentic-ui/mail-client-shell/lib/reduce-threads.ts
- components/agentic-ui/mail-client-shell/lib/reduce-settings.ts
- components/agentic-ui/mail-client-shell/lib/reduce-drafts.ts
- components/agentic-ui/mail-client-shell/lib/compose.ts
- components/agentic-ui/mail-client-shell/data/incoming.ts
- components/agentic-ui/mail-client-shell/data/people.ts
- components/agentic-ui/mail-client-shell/data/dsl.ts
- components/agentic-ui/mail-client-shell/data/seed.ts
- components/agentic-ui/mail-client-shell/data/story-ops.ts
- components/agentic-ui/mail-client-shell/data/story-clients.ts
- components/agentic-ui/mail-client-shell/data/bulk.ts
- components/agentic-ui/mail-client-shell/lib/actions.ts
- components/agentic-ui/mail-client-shell/components/notice.tsx
- components/agentic-ui/mail-client-shell/components/shell-keys.tsx
- components/agentic-ui/mail-client-shell/lib/shortcut-defs.ts
- components/agentic-ui/mail-client-shell/lib/shortcut-actions.ts
- components/agentic-ui/mail-client-shell/lib/focus.ts
- components/agentic-ui/mail-client-shell/lib/palette-commands.ts
- components/agentic-ui/mail-client-shell/lib/url-state.ts
- components/agentic-ui/mail-client-shell/components/nav.tsx
- components/agentic-ui/mail-client-shell/components/label-chip.tsx
- components/agentic-ui/mail-client-shell/components/compose/compose-drawer.tsx
- components/agentic-ui/mail-client-shell/components/compose/compose-form.tsx
- components/agentic-ui/mail-client-shell/lib/send.ts
- components/agentic-ui/mail-client-shell/components/compose/send-menu.tsx
- components/agentic-ui/mail-client-shell/components/compose/recipient-fields.tsx
- components/agentic-ui/mail-client-shell/components/compose/message-fields.tsx
- components/agentic-ui/mail-client-shell/lib/html.ts
- components/agentic-ui/mail-client-shell/lib/attachments.ts
- components/agentic-ui/mail-client-shell/components/common.tsx
- components/agentic-ui/mail-client-shell/components/attachment-chip.tsx
- components/agentic-ui/mail-client-shell/components/confirm-dialog.tsx
Related components
Agency Portfolio Shell
Frame shared by every page of a design studio portfolio: header, announcement and wordmark footer.
Details and live previewAgent OPS Shell
Application frame of an LLM observability product with sidebar navigation and a project switcher.
Details and live previewAI Workspace Sidebar Nav
Main navigation of an AI and agents platform.
Details and live previewApp Launch Shell
Frame shared by every page of a mobile app launch site: header, announcement and footer.
Details and live preview