ChartBook#

A developer platform for data science teams

ChartBook logo

Discover, document, and share data science work across your organization.

Overview#

ChartBook provides a centralized catalog for data pipelines, charts, and documentation. It helps data science teams:

  • Organize and discover analytics work across the organization

  • Generate searchable documentation websites

  • Track data governance, licensing, and access permissions

  • Load pipeline outputs programmatically into pandas or polars

New to ChartBook? Read Why ChartBook? to understand how it compares to tools like Backstage.

🚀 Getting Started

Installation and quick start guide.

Getting Started
📖 User Guide

Pipelines, charts, dataframes, and configuration.

User Guide
💡 Examples

Real-world examples and best practices.

Examples
🐍 API Reference

Python API documentation.

API Reference

Features#

  • Chart Management — Organize and document charts with metadata and publication tracking

  • Dataframe Catalog — Maintain a catalog of datasets with sources, licensing, and documentation

  • Pipeline Support — Build reproducible analytics pipelines with dependency management

  • Documentation Generation — Generate static websites to share analytics work

  • Database Integration — Upload dataframes to Trino for enterprise-wide access

  • Plotting Module — Simple API for creating charts with automatic HTML, PNG, and PDF export

Quick Example#

from chartbook import data, plotting

# Load data from a pipeline
df = data.load(pipeline="fred_charts", dataframe="interest_rates")

# Create a chart with automatic multi-format export
plotting.line(
    df,
    chart_id="repo_rates",
    x="date",
    y=["SOFR", "EFFR"],
    title="Repo Rates",
    nber_recessions=True,
)
# Build documentation website
chartbook build

Installation#

Recommended for most users:

pip install "chartbook[all]"

This installs everything you need to load data, create visualizations, and build documentation sites.

Other installation options

Minimal install (data loading only):

pip install "chartbook[data]"

Using pipx (isolated environment):

pipx install "chartbook[all]"

Development:

git clone <your-repo-url>
cd chartbook
pip install -e ".[dev]"

Next Steps#