← Back to all products

Dashboard Builder

$29

HTML dashboard template generator with widgets, SVG charts, data tables, and filters.

📁 10 files
PythonMarkdown

📄 Product Preview

Try the interactive reader and demo tools below, or get the full product with all content unlocked.

📖 Interactive Reader (Free Preview) ⚙ Try Demo Tools 📦 Download Free Sample

📁 File Structure 10 files

dashboard-builder/ ├── LICENSE ├── README.md ├── examples/ │ └── basic_example.py ├── free-sample.zip ├── guide/ │ ├── 01_features.md │ ├── 02_quick-start.md │ ├── 03_widget-types.md │ └── 04_license.md ├── index.html └── src/ └── main.py

📖 Documentation Preview README excerpt

Dashboard Builder

A Python dashboard template generator that creates self-contained HTML dashboards with widgets, SVG charts, data tables, filters, and CSV/JSON export. No JavaScript libraries, no external dependencies — just Python's standard library.

Features

  • Metric cards — KPI widgets with values, change indicators, and icons
  • SVG charts — Bar, line, and pie/donut charts rendered as inline SVG (no Chart.js needed)
  • Data tables — Sortable columns with currency/percent/date formatting
  • CSV/JSON export — One-click data export from any table
  • Filters — Select dropdowns, date ranges, and search inputs
  • Dark theme — Professional dark UI with configurable brand color
  • Self-contained — Single HTML file output, works offline
  • JSON config — Define dashboards as JSON, generate HTML

Requirements

  • Python 3.10+
  • No external dependencies (stdlib only)

Quick Start


# Generate a demo SaaS metrics dashboard
python src/main.py --demo

# Generate from a JSON config
python src/main.py --json examples/config.json

# Specify output directory
python src/main.py --demo --output ./my-dashboards

Then open the generated HTML file in your browser.

Programmatic Usage


from main import DashboardConfig, MetricCard, ChartData, DataTable, DashboardGenerator

config = DashboardConfig(
    title="My Dashboard",
    metrics=[
        MetricCard(title="Revenue", value="$12,345", change=8.5, icon="$"),
    ],
    charts=[
        ChartData(
            title="Monthly Revenue",
            chart_type="bar",
            labels=["Jan", "Feb", "Mar"],
            datasets=[{"label": "MRR", "values": [10000, 11500, 12345], "color": "#4F46E5"}],
        ),
    ],
)

generator = DashboardGenerator(config)
path = generator.save()

Widget Types

... continues with setup instructions, usage examples, and more.

📄 Code Sample .py preview

examples/basic_example.py#!/usr/bin/env python3 """ Dashboard Builder — Basic Usage Example ========================================= Demonstrates building a custom SaaS metrics dashboard programmatically. Run: python3 basic_example.py """ from __future__ import annotations import sys from pathlib import Path sys.path.insert(0, str(Path(__file__).resolve().parent.parent / "src")) from main import ( DashboardConfig, MetricCard, ChartData, DataTable, TableColumn, FilterOption, DashboardGenerator, ) def main() -> None: print("=== Dashboard Builder — Basic Example ===\n") # --- Build a custom dashboard --- config = DashboardConfig( title="Startup KPI Dashboard", subtitle="Example Inc — Weekly Overview", brand_color="#10B981", logo_text="Example Inc", filters=[ FilterOption(id="period", label="Time Period", filter_type="select", options=["This week", "Last 7 days", "Last 30 days"], default="Last 7 days"), ], metrics=[ MetricCard(title="Weekly Revenue", value="$8,450", change=15.2, change_label="vs last week", icon="$"),
Buy Now — $29 Back to Products