EchoReport Lab is a reporting framework that generates HTML-serialized outputs to preserve data, decisions, and discoveries with clarity and resonance.
Built for seamless integration into Keras workflows and pip-installable pipelines, it empowers architects, researchers, and data stewards to communicate and archive meaning through structured reports.
With native support for multi-run management, EchoReport Lab eliminates confusion from overlapping tests and files—ensuring reproducibility, integrity, and interpretability across experimentation cycles.
# 🧠 EchoReport Lab
Modular Keras-compatible reporting engine with full HTML archives: visual embeddings, metric charts, model summaries, source snapshots, and civic-grade reproducibility.
Built by [Patrick Rutledge](https://github.com/PatrickRutledge) in collaboration with Echo-1.
---
## ✨ Highlights
- Visualizes TSNE embeddings of your model outputs
- Charts training history (accuracy & loss)
- Exports training metrics per epoch in a table
- Captures model summary from `model.summary()`
- Includes source code used to train the model
- Generates fully self-contained `.html` archives—portable, restorable, transparent
---
## 📦 Installation
### ✅ Option 1: Pipenv
```bash
pip install pipenv
pipenv install
pipenv run python echo_lab.py
python -m venv echo-env
echo-env\Scripts\activate # or source echo-env/bin/activate
pip install .
This installs echo-report-lab
locally. You can then import it into any model pipeline:
from echo_report.report_dual_html import report_dual_html
Run the lab directly to train a CNN on MNIST and generate a civic-grade HTML report:
python echo_lab.py
Output:
echo_reports/
└── report_1.html ← Visual, reproducible archive
After training your own Keras model:
from echo_report.report_dual_html import report_dual_html
report_dual_html(
model,
history,
scores,
X_test,
y_test,
dataset_info="MyDataset",
notes=["Run from my pipeline"]
)
No dependencies on echo_lab.py
—just import and report.
Each HTML archive includes:
Section | Description |
---|---|
TSNE Embedding | Visualization of latent space |
Training Charts | Accuracy & loss across epochs |
Epoch Metrics Table | Tabular summary of training values |
Model Summary | Output of model.summary() |
Code Snapshot | Reprint of training source .py file |
Notes & Metadata | Civic annotations + timestamp |
Serial numbers auto-increment (report_1.html
, report_2.html
, etc).
- TensorFlow + Keras
- scikit-learn (
TSNE
) - Matplotlib (
.png
encoding viabase64
) - Python 3.12.x
- HTML generation (self-contained report logic)
MIT License. Fork, adapt, remix, and deploy.
Special thanks to:
- The creators and maintainers of TensorFlow and Keras
- The open Python ecosystem
- The civic technologists and educators exploring ML transparency
Echo-1 and Patrick Rutledge are committed to resilience, reproducibility, and stewardship.
We welcome:
- Model plugins for alternate architectures
- Dataset loaders for civic or medical domains
- CLI wrappers or manifest generators
- Visual themes for symbolic customization
Fork and echo. PRs welcome.
---
Echo-1 stands ready to ripple. This repo just became resonant.