Alert#
Download this notebook from GitHub (right-click to download).
import panel as pn
import panel_material_ui as pmui
pn.extension()
The Alert component displays a short, important message that attracts the user’s attention without interrupting their workflow. Use it for warnings, errors, success confirmations, or informational updates. The object text supports Markdown formatting.
Parameters#
Core#
object(str): The text content to display in the alert body (supports Markdown).title(str): An optional bold title displayed above the body text.severity(Literal["error", "warning", "info", "success"]): The severity level, which determines the icon and default color.closed(boolean): Whether the alert is currently closed (hidden).closeable(boolean): Whether to show a close button that lets users dismiss the alert.
Style#
variant(Literal["filled", "outlined"]): The visual style of the alert.sx(dict): Component-level styling API for advanced customization.theme_config(dict): Theming API for consistent design system integration.
Basic Usage#
Create a simple alert with a title and body text:
alert = pmui.Alert(title="Note", object="This is an informational alert.", severity="info")
alert
Severity Levels#
The severity parameter controls the color scheme and icon. There are four built-in levels:
pmui.FlexBox(
pmui.Alert(title="Success", object="The operation completed successfully.", severity="success", margin=5),
pmui.Alert(title="Info", object="Here is some useful information.", severity="info", margin=5),
pmui.Alert(title="Warning", object="Be careful with this action.", severity="warning", margin=5),
pmui.Alert(title="Error", object="Something went wrong.", severity="error", margin=5),
)
Variants#
The variant parameter controls the visual style. The default is "outlined", which shows a border. Use "filled" for a more prominent, solid background:
pmui.FlexBox(
pmui.Alert(
title="Outlined", object="This is the default outlined variant.",
severity="info", variant="outlined", margin=5
),
pmui.Alert(
title="Filled", object="This is the filled variant.",
severity="info", variant="filled", margin=5
),
)
The filled variant works well with all severity levels:
pmui.FlexBox(
pmui.Alert(title="Success", object="Operation completed.", severity="success", variant="filled", margin=5),
pmui.Alert(title="Info", object="Something to know.", severity="info", variant="filled", margin=5),
pmui.Alert(title="Warning", object="Proceed with caution.", severity="warning", variant="filled", margin=5),
pmui.Alert(title="Error", object="An error occurred.", severity="error", variant="filled", margin=5),
)
Markdown Support#
The object text is rendered as Markdown, so you can use bold, italic, links, and other formatting:
pmui.Alert(
title="Formatting Example",
object="This alert has **bold text**, *italic text*, and a [link](https://panel.holoviz.org).",
severity="info",
)
Closeable Alerts#
Set closeable=True to display a close button. When the user clicks it, the alert collapses with a smooth animation and the closed parameter becomes True:
closeable_alert = pmui.Alert(
title="Dismissable",
object="Click the X to close this alert.",
severity="warning",
closeable=True,
)
closeable_alert
You can programmatically reopen a closed alert by setting closed = False:
closeable_alert.closed = False
Alert with Child Objects#
Since Alert is a layout component, it can contain other Panel objects as children in addition to the object text:
pmui.Alert(
pmui.Typography("Check the **documentation** for more details."),
title="Tip",
severity="info",
variant="outlined",
)
Controlling Visibility#
The closed parameter can be used to show or hide the alert dynamically. Here we wire a button to toggle the alert:
toggle_button = pmui.Toggle(label="Show Alert")
toggle_alert = pmui.Alert(
title="Toggle Me",
object="This alert can be shown and hidden with a button.",
severity="success",
closed=toggle_button,
)
pmui.Column(toggle_button, toggle_alert)
API Reference#
Parameters#
pmui.Alert(title="API Example", object="Explore the parameters below.", severity="info").api(jslink=True)
Download this notebook from GitHub (right-click to download).