← 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

src/main.py #!/usr/bin/env python3 """ Dashboard Builder — Dynamic Dashboard Template Generator ========================================================== A complete dashboard builder that generates interactive HTML dashboards from Python data structures. Supports widgets, charts (SVG), data tables, filters, and CSV/JSON export — all without external dependencies. Feed it your data, pick your layout, and get a self-contained HTML dashboard. Zero dependencies. Just run: python3 main.py Part of the SaaS Starter collection by DataNest. License: MIT """ from __future__ import annotations import argparse import csv import html import io import json import logging import math import os import time import uuid from dataclasses import asdict, dataclass, field from datetime import datetime, timezone, timedelta from pathlib import Path from typing import Any, Callable, Optional # --------------------------------------------------------------------------- # Configuration # --------------------------------------------------------------------------- DEFAULT_OUTPUT = Path("./dashboard_output") BRAND_COLOR = "#4F46E5" # Indigo — override per dashboard logging.basicConfig( level=logging.INFO, format="%(asctime)s [%(levelname)s] %(name)s — %(message)s", datefmt="%Y-%m-%dT%H:%M:%S", ) logger = logging.getLogger("dashboard-builder") # --------------------------------------------------------------------------- # ... 584 more lines ...
Buy Now — $29 Back to Products