Overview

Panel 0.12, released on July 15, 2021, introduces a design system and new templates for building interactive dashboards.

Main Features

Design system

Panel 0.12 adds a design system for customizing component appearance through built-in CSS themes and consistent styling options.

python
import panel as pn
pn.extension(design='material')

# Widgets with Material theme
slider = pn.widgets.IntSlider(name='Value', value=5, start=0, end=10)
text = pn.pane.Markdown('# Dashboard')

# Reactive layout
dashboard = pn.Column(
    text,
    slider,
    pn.bind(lambda v: f'Selected value: **{v}**', slider),
)
dashboard.servable()

Templates

New templates (FastList, Material, Bootstrap) allow quickly structuring complete applications with sidebar, header, and main content area.

python
import panel as pn
pn.extension()

# Material template with sidebar
template = pn.template.MaterialTemplate(
    title='My Application',
    sidebar=[pn.widgets.Select(name='Filter', options=['A', 'B', 'C'])],
)
template.main.append(
    pn.pane.Markdown('## Main content')
)
template.servable()

Sources