Open Source · Python 3.12+

Interactive reports
from Python

Turn pandas DataFrames and plots into self-contained, interactive HTML reports. No server, no accounts, no fuss.

Read the Docs GitHub
pip install datainpane

Rich Block Types

DataFrames, plots, markdown, code, formulas, images, HTML embeds, and big numbers — all as composable blocks.

Flexible Layouts

Pages, tabs, groups, selects, and toggles. Build multi-page dashboards with columns and nested layouts.

Self-Contained HTML

Reports are single .html files with everything inlined. Share via email, Slack, or embed anywhere. No server needed.

Five lines to a report

Import your data, wrap it in blocks, save. That's it. Works in scripts, notebooks, and pipelines.

Quickstart Guide
import datainpane as dip
import pandas as pd
import altair as alt

df = pd.read_csv("sales.csv")
chart = alt.Chart(df).mark_bar().encode(
    x="region", y="revenue"
)

view = dip.Blocks(
    dip.Text("# Q4 Sales Report"),
    dip.Group(
        dip.BigNumber(heading="Revenue", value="$1.2M"),
        dip.BigNumber(heading="Growth", value="18%"),
        columns=2,
    ),
    dip.Plot(chart),
    dip.DataTable(df),
)

dip.save_report(view, path="report.html")

Works with the plotting libraries you already use

Altair Plotly Matplotlib Bokeh Folium pandas

Start building reports

Read the docs, install the package, and have your first report in under a minute.

Read the Docs