Skip to content

Callout

Callout surfaces info, success, warning, or danger messages inside a form — tips before save, destructive confirmations, or success banners.

Each variation below includes a short explanation, the fluent API to paste into your schema, and a screenshot of the rendered control.

Neutral guidance.

Callout.make()
.info()
.label('Tip')
.description('Fill these fields before saving.')

Orbit Info callout (light)

Orbit Info callout (dark)

Destructive action warning.

Callout.make()
.danger()
.label('Danger')
.description('This action cannot be undone.')

Orbit Danger callout (light)

Orbit Danger callout (dark)

Confirmation feedback.

Callout.make()
.success()
.label('Saved')
.description('Your changes were published.')

Orbit Success callout (light)

Orbit Success callout (dark)

Caution that is not yet destructive.

Callout.make()
.warning()
.label("Unpublished")
.description("This draft is not visible on the site.")

Orbit Warning callout (light)

Orbit Warning callout (dark)

.footer_actions([...]) renders buttons under the body. .footer_actions_alignment("end") (or "start" / "center") aligns them.

from almasix.orbit.actions import Action
from almasix.orbit.schemas import Callout
Callout.make()
.warning()
.label("Unsaved changes")
.description("Leave this page and the draft is lost.")
.footer_actions([Action.make("discard").label("Discard").color("danger")])
.footer_actions_alignment("end")

Orbit Callout footer actions (light)

Orbit Callout footer actions (dark)

.icon(...) / .icon_color(...) override the status default. .color(...) sets the accent independently of .status(...). Nested .schema([...]) lands in the body under the description.

Closures work on .label(), .helper_text(), .placeholder(), .visible(), .disabled(), and .required() where applicable — see Form closures.