Status Blank States
openstatus/status-blankFreeBlock
Empty and skeleton state components for loading and no-data scenarios
Install it
npx shadcn@latest add https://openstatus.dev/r/status-blank.jsonSource
1"use client";23import { useStatusBlocksLabels } from "@/components/blocks/status-i18n";4import { cn } from "@/lib/utils";56// ============================================================================7// Container Components8// ============================================================================910/**11 * StatusBlankContainer - Main container for empty state displays12 *13 * Provides a centered, bordered container with muted background for displaying14 * empty state content. The container is responsive with adaptive padding15 * (sm:px-8 sm:py-6) and uses flexbox for vertical centering of content.16 *17 * @example18 * ```tsx19 * <StatusBlankContainer>20 * <StatusBlankTitle>No Data Available</StatusBlankTitle>21 * <StatusBlankDescription>Add monitors to see data here</StatusBlankDescription>22 * </StatusBlankContainer>23 * ```24 *25 * @see StatusBlankTitle - For heading text26 * @see StatusBlankDescription - For descriptive text27 */28export function StatusBlankContainer({29 children,30 className,31 ...props32}: React.ComponentProps<"div">) {33 return (34 <div35 className={cn(36 "bg-muted/30 flex flex-col items-center justify-center gap-2.5 rounded-lg border px-3 py-2 text-center sm:px-8 sm:py-6",37 className,38 )}39 {...props}40 >41 {children}42 </div>43 );44}4546// ============================================================================47// Text Components48// ============================================================================4950/**51 * StatusBlankTitle - Title text for empty state displays52 *53 * Displays medium-weight title text within empty state containers.54 * Typically used to communicate the empty state condition.55 *56 * @example57 * ```tsx58 * <StatusBlankTitle>No monitors found</StatusBlankTitle>59 * ```60 *61 * @see StatusBlankDescription - For additional descriptive text62 */63export function StatusBlankTitle({64 children,65 className,66 ...props67}: React.ComponentProps<"div">) {68 return (69 <div className={cn("font-medium", className)} {...props}>70 {children}71 </div>72 );73}7475/**76 * StatusBlankDescription - Descriptive text for empty state displays77 *78 * Displays muted, monospaced text providing additional context or guidance79 * for the empty state. The monospace font helps distinguish it as secondary80 * instructional text.81 *82 * @example83 * ```tsx84 * <StatusBlankDescription>85 * Add monitors to this page to see their status here86 * </StatusBlankDescription>87 * ```88 *89// … truncated
Files it writes
More from openstatus
All 26 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Status Bannerstatus-banner | openstatus | Blocks | Free | no deps | |
| Status Barstatus-bar | openstatus | Blocks | Free | 1 dep | |
| Status Calendarstatus-calendar | openstatus | Blocks | Free | 3 deps | |
| Status Page Chromestatus-chrome | openstatus | Blocks | Free | no deps | |
| Status Page (Complete)status-complete | openstatus | Blocks | Free | no deps | |
| Status Componentstatus-component | openstatus | Blocks | Free | 2 deps | |
| Status Component Groupstatus-component-group | openstatus | Blocks | Free | no deps | |
| Status Page (Essentials)status-essentials | openstatus | Blocks | Free | no deps |
