Support Inbox

A three-pane helpdesk inbox: an icon rail, a searchable ticket list with status filters and unread markers, and a live conversation pane. Clicking a ticket loads its thread, and the composer actually appends replies (⌘/Ctrl+Enter to send).

PRO

Dashboard10: Support Inbox

A customer-support inbox dashboard: a three-pane helpdesk UI with an icon rail, a searchable ticket list filtered by status, and a live conversation panel with a working reply composer. Use it as the shell for a support inbox dashboard, a shared team inbox, or any Next.js / React customer support dashboard built on shadcn/ui.

Upgrade to Pro

Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.

Installation

Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.

Radix flavor

bash
npx shadcn add "https://ui.beste.co/r/dashboard10?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/dashboard10?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/dashboard10.tsx along with the shadcn/ui dependencies it needs (button, badge, avatar, input, textarea). It composes no separate Beste components, so it is self-contained: the ticket list, conversation view, and composer all live in the one file.

Quick start

The installed file exports dashboard10Demo alongside the block: the exact props behind the preview above. Spread it to get the full inbox in one line. The block fills the viewport (h-screen), so give it a full-height route rather than nesting it inside a padded container.

tsx
import { Dashboard10, dashboard10Demo } from "@/components/beste/block/dashboard10";

export default function Page() {
  return <Dashboard10 {...dashboard10Demo} />;
}

Props

Every prop is optional. Omit any and the block falls back to its built-in demo data, so <Dashboard10 /> renders a complete, populated support inbox out of the box. Pass just the props you want to override.

PropTypeDefaultDescription
brandNamestring"Relay"Product name shown in the ticket-list header, above the unread count
ticketsTicket[]demo ticketsConversations seeding the list; also seeds the live reply state

The block-local data types:

ts
type Ticket = {
  id: string;
  name: string;
  avatar: string; // image URL, rendered with a plain <img> via Avatar
  subject: string;
  preview: string; // truncated line under the subject in the list
  time: string;
  unread: boolean; // shows a primary dot and counts toward the header total
  status: "Open" | "Pending" | "Closed";
  messages: Message[];
};

type Message = {
  id: string;
  fromMe: boolean; // right-aligned primary bubble when true
  author: string;
  avatar?: string; // image URL for the sender (omitted for your own messages)
  text: string;
  time: string;
};

tickets seeds React state: the reply composer appends new fromMe messages to the selected ticket, so passing a new array resets the thread you start from. The first ticket is selected on mount.

Still internal

A few structural bits stay as constants in the installed file — edit them in place:

Behavior notes

Requirements

Wiring the form up

This block ships the form markup only; state, validation, and submit are yours to add. Our guide wires the shadcn Field primitives to React Hook Form, TanStack Form, and Formisch on one field system.

More Dashboard blocks

View all Dashboard
PRO

dashboard4

Project Workspace

A project-management dashboard: sidebar + search topbar, a four-up project stats row with one highlighted card, a weekly project-analytics bar chart, a reminder card with a start-meeting action, a team-collaboration list, a project-progress radial gauge, and a focus time-tracker card.

PRO

dashboard1

Admin Shell

A full admin dashboard shell: collapsible icon sidebar, topbar with a ⌘K command palette and account menu, a greeting header, a three-up KPI row with trend badges, and a recent-orders data table. The frame the rest of the dashboard blocks drop into.

PRO

dashboard12

Service Monitoring

An observability console with an icon rail and a live status ribbon: a service-health grid with status dots and latency/uptime, a latency line chart, a request-volume area chart, a 30-day uptime bar strip, and a recent-events feed. A 1h/24h/7d tab control live-swaps the chart data.

PRO

dashboard2

Customers Table

A customers management section powered by the data-table engine: avatar cells, status badges, sortable columns, keyword search, row selection with a live selected count, per-row action menus, pagination, and an export / add-customer toolbar.

PRO

dashboard6

Talent Sourcing

A project detail dashboard for staffing: sidebar + action topbar with a project actions menu, a project header with status pills, a five-up stat strip with project meta, functional pipeline sub-tabs, a search / recently-active toggle / filters-menu toolbar that live-filters the grid, and a responsive grid of nine talent cards with wishlist and invite toggles.

PRO

dashboard13

Account Settings

A settings dashboard with a vertical section nav that live-switches panels: an editable profile, security with a two-factor toggle and active sessions, notification switches, a billing panel with plan/payment/invoices, and a team list with per-member role selects.