BlockDex

Components

Registries

Free blocks

Method

BlockDex

Components

Registries

Free blocks

Method

Open API

BlockDex

Components

Registries

Free blocks

Method

Open API

Components/openstatus/status-banner

Status Banner

openstatus/status-banner
FreeBlock

Alert-style status banner with tabs support and timestamp display

Install it

npx shadcn@latest add https://openstatus.dev/r/status-banner.json

Source

src/components/blocks/status-banner.tsxopenstatus.dev/r/status-banner.json · first 6 KB
1"use client";
2
3import { useStatusBlocksLabels } from "@/components/blocks/status-i18n";
4import { StatusIcon as UnifiedStatusIcon } from "@/components/blocks/status-icon";
5import { StatusTimestamp } from "@/components/blocks/status-timestamp";
6import type { StatusType } from "@/components/blocks/status.types";
7import {
8 Tabs,
9 TabsContent,
10 TabsList,
11 TabsTrigger,
12} from "@/components/ui/tabs";
13import { cn } from "@/lib/utils";
14
15/**
16 * StatusBanner - Complete banner component with integrated icon, message, and timestamp
17 *
18 * A fully composed banner component that displays a prominent status message with:
19 * - Status-colored icon on the left
20 * - Automatic status message (e.g., "All Systems Operational")
21 * - Current timestamp on the right
22 *
23 * The banner automatically styles itself based on the status type with colored
24 * backgrounds and borders. This is the simplest way to display a status banner
25 * when you don't need custom content.
26 *
27 * For custom banner content, use StatusBannerContainer with manual composition.
28 *
29 * @param status - The status type that determines appearance and message
30 *
31 * @example
32 * ```tsx
33 * <StatusBanner status="success" />
34 * // Displays: [✓ icon] All Systems Operational | Jan 15, 2024 10:30 (UTC)
35 * ```
36 *
37 * @example
38 * ```tsx
39 * <StatusBanner status="degraded" />
40 * // Displays: [⚠ icon] Degraded Performance | Jan 15, 2024 10:30 (UTC)
41 * ```
42 *
43 * @see StatusBannerContainer - For custom banner composition
44 * @see StatusBannerMessage - For the automatic status message
45 * @see StatusTimestamp - For the timestamp display
46 */
47export function StatusBanner({
48 className,
49 status,
50}: React.ComponentProps<"div"> & {
51 status?: Exclude<StatusType, "empty">;
52}) {
53 return (
54 <StatusBannerContainer
55 status={status}
56 className={cn(
57 "flex items-center gap-3 px-3 py-2 sm:px-4 sm:py-3",
58 "data-[status=success]:bg-success/20",
59 "data-[status=degraded]:bg-warning/20",
60 "data-[status=error]:bg-destructive/20",
61 "data-[status=info]:bg-info/20",
62 className,
63 )}
64 >
65 <StatusBannerIcon className="flex-shrink-0" />
66 <div className="flex flex-1 flex-wrap items-center justify-between gap-2">
67 <StatusBannerMessage className="text-xl font-semibold" />
68 <StatusTimestamp date={new Date()} className="text-xs" />
69 </div>
70 </StatusBannerContainer>
71 );
72}
73StatusBanner.displayName = "StatusBanner";
74
75/**
76// … truncated

What it pulls in

Other registry items

  • https://openstatus.dev/r/status-icon.json
  • https://openstatus.dev/r/status-types.json
  • https://openstatus.dev/r/status-utils.json
  • https://openstatus.dev/r/status-timestamp.json
  • https://openstatus.dev/r/status-i18n.json
  • tabs

Files it writes

  • src/components/blocks/status-banner.tsx

Facts

Registry
openstatus
Type
registry:block
Access
Free
Files written
1
Licence
AGPL-3.0
First indexed
2026-08-01
Last confirmed
yesterday

Go to the source

openstatus.dev openstatusHQ/openstatus on GitHub Raw registry item This item as JSON

More from openstatus

All 26 items
Same registry, same kind — the ones you would have found next
ComponentRegistryKindAccessInstallsCommand
Status Barstatus-baropenstatusBlocksFree1 dep
Status Blank Statesstatus-blankopenstatusBlocksFreeno deps
Status Calendarstatus-calendaropenstatusBlocksFree3 deps
Status Page Chromestatus-chromeopenstatusBlocksFreeno deps
Status Page (Complete)status-completeopenstatusBlocksFreeno deps
Status Componentstatus-componentopenstatusBlocksFree2 deps
Status Component Groupstatus-component-groupopenstatusBlocksFreeno deps
Status Page (Essentials)status-essentialsopenstatusBlocksFreeno deps
BlockDex

Built by

Kynth Studio

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex

BlockDex

Built by

Kynth Studio

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex

BlockDex

Built by

Kynth Studio

Index

Components
Registries
Method
Open API

Guides

shadcn component libraries
Best shadcn registries
Free shadcn blocks

Reference

Corpus counts
Crawl health
hello@kynth.studio
Privacy
Terms

BlockDex