components / 16

marked alert

a persistent message deserves more than a tinted rectangle. the hand marks what changed and why it matters.

shadcnnpx shadcn@latest add berkantay/cheez/marked-alert
live

playground

announcing

changes published

the latest version is now available to everyone.

tone
variant
size
character
boundary
<MarkedAlert
  tone="success"
  variant="outline"
  size="medium"
  character="rushed"
  frameMark="rounded-box"
  dismissible
  open={open}
  onOpenChange={setOpen}
>
  <MarkedAlertTitle>changes published</MarkedAlertTitle>
  <MarkedAlertDescription>
    the latest version is now available to everyone.
  </MarkedAlertDescription>
</MarkedAlert>
signals

every tone has a glyph

meaning before color

a small note

this changes how the next export behaves.

changes published

the latest version is now available to everyone.

storage nearly full

remove an old export before creating another one.

comments moved

feedback now lives beside the selected component.

drawing the preview

Cheez is rendering every mark with your settings.

surface

three levels of presence

outline, marker wash, quiet
outline

a clear boundary

the alert owns its space without becoming a generic card.

filled

needs your attention

the hand fills urgent messages like a marker across paper.

quiet

a quiet observation

the status drawing can carry the message without a container.

composition

actions and banners

native controls, explicit priority

preview environment

changes here do not affect the live workspace.

migration complete

all 148 components moved without losing their history.

custom dismissal

the close part can live with your own action arrangement.

drawn close control
reference

api

root, title, description, actions, close
partproptypedefaultpurpose
RoottoneMarkedAlertType"default"status glyph and ink
Rootvariant"outline" | "filled" | "quiet""outline"boundary treatment
Rootlayout"card" | "banner""card"inline or full-width rhythm
Rootsize"small" | "medium" | "large""medium"spacing and type scale
Rootpriority"polite" | "urgent" | "off"tone-awarelive-region announcement behavior
Rootopenbooleancontrolled visibility
RootdefaultOpenbooleantrueinitial uncontrolled visibility
RootonOpenChange(open) => voiddismissal callback
Rootdismissiblebooleanfalseinclude the drawn close control
RootcharacterCheezCharacter"rushed"drawing personality
RootframeMarkCheezType"rounded-box"outline boundary
RootfillMarkCheezType"brush-highlight"filled marker wash
RootframeColorstringtone inkboundary or fill ink
RootstatusMarkCheezTypetone glyphleading status override
RootstatusColorstringtone inkleading glyph ink
RoottitleMarkCheezType"underline"title emphasis
RoottitleColorstringtone inktitle emphasis ink
RootcloseColorstring"#ff5fa2"dismiss glyph ink
Rootthicknessnumber1all pen weight
TitlemarkCheezTyperoot valuelocal title-mark override
Titlecolorstringroot valuelocal title-ink override
DescriptionHTML propsp propssupporting content
ActionsHTML propsdiv propsaction composition slot
CloseHTML propsbutton propsdismissal control

behavior notes

  • error alerts announce urgently by default; every other tone is polite
  • priority off removes live-region behavior for content already present on page load
  • status meaning is carried by both a glyph and text, never color alone
  • filled alerts use an animated Cheez marker wash rather than a CSS fill
  • controlled visibility lets product state decide whether dismissal sticks
  • preventing default in a custom close handler keeps the alert open