Skip to content

Panel

Frame full-width operational, detail, and settings content without imposing a heading rank, article role, shadow, or maximum width.

Default Rendered example

Database failover

Awaiting review

Change CHG-2841 ยท Window starts at 02:00 UTC

Owner
Data reliability
Risk
Elevated
Rollback threshold
Write lag above 90 s

Last validated 8 minutes ago by the change service.

Usage Example
@panel.Panel(panel.Config{
    Header:    changePanelHeader(),
    Actions:   changePanelActions(),
    Footer:    changePanelFooter(),
    RootAttrs: templ.Attributes{
        "role": "region",
        "aria-labelledby": "change-panel-title",
    },
}) {
    @changePanelBody()
}

Subtle settings surface

Use the alternate surface when a grouped region needs hierarchy without another visible border.

Subtle settings surface Rendered example

Pickup notifications

Choose when patrons receive hold updates.

Ready and expiring-soon notices are enabled for this branch.

Subtle settings surface
@panel.Panel(panel.Config{
    Appearance: panel.AppearanceSubtle,
    Density:    panel.DensityRelaxed,
    Header:     notificationPanelHeader(),
}) {
    @notificationPanelBody()
}

Plain detail rail

Use the plain treatment when the surrounding layout already owns its border and background.

Plain detail rail Rendered example

Ownership

Watershed field team ยท Northern reach

Plain detail rail
@panel.Panel(panel.Config{
    Appearance: panel.AppearancePlain,
    Density:    panel.DensityCompact,
    Header:     ownershipPanelHeader(),
}) {
    @ownershipPanelBody()
}

Go API

v0.2.7

The examples above cover behavior and composition. pkg.go.dev is the canonical reference for exported types, functions, methods, and Go documentation.

github.com/araihu/goshtoso/components/panel
Open v0.2.7 API