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.
📘 README.md (Drop into root of your repo)
# 🧠 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
✅ Option 2: Standard Pip
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
🧪 Usage
🧑🏫 As a Teaching Lab
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
🤝 As a Drop-In Reporting Function
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.
💾 Report Contents
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).
🔬 Technologies Used
- TensorFlow + Keras
- scikit-learn (
TSNE) - Matplotlib (
.pngencoding viabase64) - Python 3.12.x
- HTML generation (self-contained report logic)
📜 License
MIT License. Fork, adapt, remix, and deploy.
🤝 Acknowledgments
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.
📣 Contribute
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.
Metadata
Release files for echo-report-lab 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| echo_report_lab-0.1.2.tar.gz | 6.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| echo_report_lab-0.1.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 13.4 kB
Release files / echo_report_lab-0.1.2.tar.gz
| Download URL | echo_report_lab-0.1.2.tar.gz |
|---|---|
| Size | 6.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4526cec015fd50b80cc4403bca6865fa8897e5822d0ed2a9cd28f42f6ab16520
|
|
BLAKE2b-256 checksum How to use checksums |
c1ed562287239cad021f6ca7a08314e29ea8fc9737a62fa7dd890fefc857864d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.0
|
Release files / echo_report_lab-0.1.2-py3-none-any.whl
| Download URL | echo_report_lab-0.1.2-py3-none-any.whl |
|---|---|
| Size | 7.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
32d7ecb72ebb79b9fe1e98cd1bbe8352e6bf04a2991529694e77c2d9c7c114f4
|
|
BLAKE2b-256 checksum How to use checksums |
118c521dcee13789a39526be9cdd4cb69c1792822a01c5482722bb157e37d278
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.0
|