staticdash 2026.5__tar.gz → 2026.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- staticdash-2026.7/PKG-INFO +98 -0
- staticdash-2026.7/README.md +77 -0
- {staticdash-2026.5 → staticdash-2026.7}/pyproject.toml +3 -1
- {staticdash-2026.5 → staticdash-2026.7}/setup.py +1 -0
- staticdash-2026.7/staticdash/assets/vendor/mermaid/mermaid.min.js +2029 -0
- staticdash-2026.7/staticdash/dashboard.py +747 -0
- staticdash-2026.7/staticdash.egg-info/PKG-INFO +98 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash.egg-info/SOURCES.txt +1 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash.egg-info/requires.txt +2 -0
- staticdash-2026.5/PKG-INFO +0 -71
- staticdash-2026.5/README.md +0 -52
- staticdash-2026.5/staticdash/dashboard.py +0 -930
- staticdash-2026.5/staticdash.egg-info/PKG-INFO +0 -71
- {staticdash-2026.5 → staticdash-2026.7}/setup.cfg +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/__init__.py +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/css/style.css +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/js/script.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/mathjax/tex-mml-chtml.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/plotly/plotly.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/components/prism-bash.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/components/prism-c.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/components/prism-javascript.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/components/prism-json.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/components/prism-markup.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/components/prism-python.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/components/prism-sql.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/prism-tomorrow.min.css +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash/assets/vendor/prism/prism.min.js +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash.egg-info/dependency_links.txt +0 -0
- {staticdash-2026.5 → staticdash-2026.7}/staticdash.egg-info/top_level.txt +0 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: staticdash
|
|
3
|
+
Version: 2026.7
|
|
4
|
+
Summary: A lightweight static HTML dashboard generator with Plotly and pandas support.
|
|
5
|
+
Author-email: Brian Day <brian.day1@gmail.com>
|
|
6
|
+
License: CC0-1.0
|
|
7
|
+
Project-URL: Homepage, https://github.com/staticdash/staticdash
|
|
8
|
+
Project-URL: Repository, https://github.com/staticdash/staticdash
|
|
9
|
+
Requires-Python: >=3.8
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
Requires-Dist: plotly
|
|
12
|
+
Requires-Dist: pandas
|
|
13
|
+
Requires-Dist: dominate
|
|
14
|
+
Requires-Dist: matplotlib
|
|
15
|
+
Requires-Dist: markdown
|
|
16
|
+
Requires-Dist: pymdown-extensions
|
|
17
|
+
Provides-Extra: images
|
|
18
|
+
Requires-Dist: kaleido; extra == "images"
|
|
19
|
+
Provides-Extra: all
|
|
20
|
+
Requires-Dist: kaleido; extra == "all"
|
|
21
|
+
|
|
22
|
+
# staticdash
|
|
23
|
+
|
|
24
|
+
<p align="center">
|
|
25
|
+
<img src="https://raw.githubusercontent.com/staticdash/staticdash/main/logo.svg" alt="staticdash logo" width="220" height="50">
|
|
26
|
+
</p>
|
|
27
|
+
|
|
28
|
+
staticdash is a lightweight Python module for creating static, multi-page HTML dashboards. It supports:
|
|
29
|
+
|
|
30
|
+
- **Plotly plots:** Interactive, responsive visualizations
|
|
31
|
+
- **Matplotlib figures:** Static plots and charts
|
|
32
|
+
- **Pandas DataFrames:** Sortable, searchable tables
|
|
33
|
+
- **Rich text formatting:** Full Markdown support including **bold**, *italic*, ~~strikethrough~~, lists, links, tables, and blockquotes
|
|
34
|
+
- **Math expressions:** LaTeX math rendering with MathJax (inline `$...$` and display `$$...$$`)
|
|
35
|
+
- **Mermaid diagrams:** Flowcharts, sequence diagrams, state diagrams, and more
|
|
36
|
+
- **File downloads:** Add download buttons for any file
|
|
37
|
+
- **Multi-page navigation:** Hierarchical sidebar with subpages
|
|
38
|
+
- **Custom styling:** Easily customize CSS and JavaScript
|
|
39
|
+
- **Air-gapped support:** All assets vendored for offline environments
|
|
40
|
+
|
|
41
|
+
## Installation
|
|
42
|
+
|
|
43
|
+
```bash
|
|
44
|
+
pip install staticdash
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
## Features
|
|
48
|
+
|
|
49
|
+
### Content Types
|
|
50
|
+
|
|
51
|
+
- **Add Plotly figures:** `page.add(fig)` - Interactive plots with zoom, pan, hover tooltips
|
|
52
|
+
- **Add Matplotlib figures:** `page.add(fig)` - Static plots converted to PNG
|
|
53
|
+
- **Add tables:** `page.add(df)` - Pandas DataFrames rendered as sortable, searchable tables
|
|
54
|
+
- **Add text:** `page.add("Your text")` - Full Markdown support including:
|
|
55
|
+
- **Bold**, *italic*, ~~strikethrough~~
|
|
56
|
+
- Lists (ordered and unordered)
|
|
57
|
+
- Links, blockquotes, code blocks
|
|
58
|
+
- Tables in Markdown syntax
|
|
59
|
+
- **Add headers:** `page.add_header("Title", level=2)` - Markdown headers (h1-h6)
|
|
60
|
+
- **Add math:** Use `$inline math$` or `$$display math$$` for LaTeX expressions
|
|
61
|
+
- **Add diagrams:** Use ` ```mermaid ` code blocks for flowcharts, sequence diagrams, state diagrams, gantt charts
|
|
62
|
+
- **Add downloads:** `page.add_download("path/to/file", "Label")` - File download buttons
|
|
63
|
+
|
|
64
|
+
### Layout & Styling
|
|
65
|
+
|
|
66
|
+
- **Sidebar navigation:** Fixed sidebar with hierarchical pages and subpages
|
|
67
|
+
- **Responsive design:** Works on desktop and mobile devices
|
|
68
|
+
- **Custom styling:** Edit `assets/css/style.css` for your own look
|
|
69
|
+
- **Per-page HTML:** Individual HTML files for each page plus combined dashboard
|
|
70
|
+
|
|
71
|
+
### Air-Gapped Support
|
|
72
|
+
|
|
73
|
+
All external dependencies (Plotly, MathJax, Mermaid, Prism) are vendored during installation, ensuring dashboards work completely offline without internet access or CDN dependencies.
|
|
74
|
+
|
|
75
|
+
## Live Demos
|
|
76
|
+
|
|
77
|
+
- **[Tutorial Dashboard](https://staticdash.github.io/staticdash/tutorial_output/)** - Comprehensive feature demonstration
|
|
78
|
+
- **[Directory Example](https://staticdash.github.io/staticdash/directory_out/)** - Multiple dashboard aggregation
|
|
79
|
+
|
|
80
|
+
## Examples
|
|
81
|
+
|
|
82
|
+
The repository includes a comprehensive tutorial demonstrating all features:
|
|
83
|
+
|
|
84
|
+
**Tutorial Dashboard:** Run `python tutorial.py` to generate `tutorial_output/index.html`
|
|
85
|
+
|
|
86
|
+
The tutorial demonstrates:
|
|
87
|
+
- Basic page creation and navigation
|
|
88
|
+
- Text formatting with Markdown (bold, italic, strikethrough, lists, links, tables)
|
|
89
|
+
- Plotly and Matplotlib figures
|
|
90
|
+
- Pandas DataFrame tables
|
|
91
|
+
- Subpages and hierarchical navigation
|
|
92
|
+
- MathJax math expressions (inline and display)
|
|
93
|
+
- Mermaid diagrams (flowcharts, sequence diagrams, state diagrams)
|
|
94
|
+
- Directory class for aggregating multiple dashboards
|
|
95
|
+
|
|
96
|
+
---
|
|
97
|
+
|
|
98
|
+
For the source code, see [`tutorial.py`](./tutorial.py) in this repository.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# staticdash
|
|
2
|
+
|
|
3
|
+
<p align="center">
|
|
4
|
+
<img src="https://raw.githubusercontent.com/staticdash/staticdash/main/logo.svg" alt="staticdash logo" width="220" height="50">
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
staticdash is a lightweight Python module for creating static, multi-page HTML dashboards. It supports:
|
|
8
|
+
|
|
9
|
+
- **Plotly plots:** Interactive, responsive visualizations
|
|
10
|
+
- **Matplotlib figures:** Static plots and charts
|
|
11
|
+
- **Pandas DataFrames:** Sortable, searchable tables
|
|
12
|
+
- **Rich text formatting:** Full Markdown support including **bold**, *italic*, ~~strikethrough~~, lists, links, tables, and blockquotes
|
|
13
|
+
- **Math expressions:** LaTeX math rendering with MathJax (inline `$...$` and display `$$...$$`)
|
|
14
|
+
- **Mermaid diagrams:** Flowcharts, sequence diagrams, state diagrams, and more
|
|
15
|
+
- **File downloads:** Add download buttons for any file
|
|
16
|
+
- **Multi-page navigation:** Hierarchical sidebar with subpages
|
|
17
|
+
- **Custom styling:** Easily customize CSS and JavaScript
|
|
18
|
+
- **Air-gapped support:** All assets vendored for offline environments
|
|
19
|
+
|
|
20
|
+
## Installation
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
pip install staticdash
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Features
|
|
27
|
+
|
|
28
|
+
### Content Types
|
|
29
|
+
|
|
30
|
+
- **Add Plotly figures:** `page.add(fig)` - Interactive plots with zoom, pan, hover tooltips
|
|
31
|
+
- **Add Matplotlib figures:** `page.add(fig)` - Static plots converted to PNG
|
|
32
|
+
- **Add tables:** `page.add(df)` - Pandas DataFrames rendered as sortable, searchable tables
|
|
33
|
+
- **Add text:** `page.add("Your text")` - Full Markdown support including:
|
|
34
|
+
- **Bold**, *italic*, ~~strikethrough~~
|
|
35
|
+
- Lists (ordered and unordered)
|
|
36
|
+
- Links, blockquotes, code blocks
|
|
37
|
+
- Tables in Markdown syntax
|
|
38
|
+
- **Add headers:** `page.add_header("Title", level=2)` - Markdown headers (h1-h6)
|
|
39
|
+
- **Add math:** Use `$inline math$` or `$$display math$$` for LaTeX expressions
|
|
40
|
+
- **Add diagrams:** Use ` ```mermaid ` code blocks for flowcharts, sequence diagrams, state diagrams, gantt charts
|
|
41
|
+
- **Add downloads:** `page.add_download("path/to/file", "Label")` - File download buttons
|
|
42
|
+
|
|
43
|
+
### Layout & Styling
|
|
44
|
+
|
|
45
|
+
- **Sidebar navigation:** Fixed sidebar with hierarchical pages and subpages
|
|
46
|
+
- **Responsive design:** Works on desktop and mobile devices
|
|
47
|
+
- **Custom styling:** Edit `assets/css/style.css` for your own look
|
|
48
|
+
- **Per-page HTML:** Individual HTML files for each page plus combined dashboard
|
|
49
|
+
|
|
50
|
+
### Air-Gapped Support
|
|
51
|
+
|
|
52
|
+
All external dependencies (Plotly, MathJax, Mermaid, Prism) are vendored during installation, ensuring dashboards work completely offline without internet access or CDN dependencies.
|
|
53
|
+
|
|
54
|
+
## Live Demos
|
|
55
|
+
|
|
56
|
+
- **[Tutorial Dashboard](https://staticdash.github.io/staticdash/tutorial_output/)** - Comprehensive feature demonstration
|
|
57
|
+
- **[Directory Example](https://staticdash.github.io/staticdash/directory_out/)** - Multiple dashboard aggregation
|
|
58
|
+
|
|
59
|
+
## Examples
|
|
60
|
+
|
|
61
|
+
The repository includes a comprehensive tutorial demonstrating all features:
|
|
62
|
+
|
|
63
|
+
**Tutorial Dashboard:** Run `python tutorial.py` to generate `tutorial_output/index.html`
|
|
64
|
+
|
|
65
|
+
The tutorial demonstrates:
|
|
66
|
+
- Basic page creation and navigation
|
|
67
|
+
- Text formatting with Markdown (bold, italic, strikethrough, lists, links, tables)
|
|
68
|
+
- Plotly and Matplotlib figures
|
|
69
|
+
- Pandas DataFrame tables
|
|
70
|
+
- Subpages and hierarchical navigation
|
|
71
|
+
- MathJax math expressions (inline and display)
|
|
72
|
+
- Mermaid diagrams (flowcharts, sequence diagrams, state diagrams)
|
|
73
|
+
- Directory class for aggregating multiple dashboards
|
|
74
|
+
|
|
75
|
+
---
|
|
76
|
+
|
|
77
|
+
For the source code, see [`tutorial.py`](./tutorial.py) in this repository.
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "staticdash"
|
|
7
|
-
version = "2026.
|
|
7
|
+
version = "2026.7"
|
|
8
8
|
description = "A lightweight static HTML dashboard generator with Plotly and pandas support."
|
|
9
9
|
authors = [
|
|
10
10
|
{ name = "Brian Day", email = "brian.day1@gmail.com" }
|
|
@@ -17,6 +17,8 @@ dependencies = [
|
|
|
17
17
|
"pandas",
|
|
18
18
|
"dominate",
|
|
19
19
|
"matplotlib",
|
|
20
|
+
"markdown",
|
|
21
|
+
"pymdown-extensions",
|
|
20
22
|
]
|
|
21
23
|
|
|
22
24
|
[project.optional-dependencies]
|
|
@@ -22,6 +22,7 @@ OFFLINE = os.environ.get("STATICDASH_VENDOR_OFFLINE", "0") == "1"
|
|
|
22
22
|
VENDOR_FILES = [
|
|
23
23
|
("plotly/plotly.min.js", "https://cdn.plot.ly/plotly-2.32.0.min.js"),
|
|
24
24
|
("mathjax/tex-mml-chtml.js", "https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"),
|
|
25
|
+
("mermaid/mermaid.min.js", "https://cdn.jsdelivr.net/npm/mermaid@10/dist/mermaid.min.js"),
|
|
25
26
|
("prism/prism-tomorrow.min.css", "https://cdn.jsdelivr.net/npm/prismjs@1.29.0/themes/prism-tomorrow.min.css"),
|
|
26
27
|
("prism/prism.min.js", "https://cdn.jsdelivr.net/npm/prismjs@1.29.0/prism.min.js"),
|
|
27
28
|
("prism/components/prism-python.min.js", "https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-python.min.js"),
|