Cookiecutter template for Thoughtful pip package
Project description
A lightweight Python library for robust record tracing, status tracking, and detailed logging — built for automation pipelines and data integrity.
Features
ThoughtfulRecord model Track each record’s status, lifecycle, and traces with robust JSON-serializable objects.
Automatic history Dumps detailed logs, merges previous runs seamlessly, preserving full audit history.
Enhanced HTML reports Auto-generates beautiful HTML reports with status summary, traces, diffs, and screenshots.
Portable archive Packs all data (logs + images + HTML) into a shareable ZIP file.
Fail-safe logging Internally uses try/except to ensure tracing never crashes your main process.
Installation
Install via pip:
pip install t-record-lib
Or for local development:
git clone https://github.com/YOUR_ORG/t_record.git cd t_record pip install -e .
Quickstart
from t_record.record import configure_records_tracing, ThoughtfulRecord, dump_records, pack_sharable_zip, RecordStatus
# 1. Configure
configure_records_tracing("records_folder")
# 2. Create your record
class MyRecord(ThoughtfulRecord):
id: str
status: RecordStatus = ""
record = MyRecord(id="rec_001")
# 3. Change status or add traces
record.status = Status.RUNNING
record.log_trace("Started processing", reason="Data loaded")
# 4. Save everything
dump_records()
# 5. Create shareable ZIP
pack_sharable_zip("records.zip")
Output files
By default, each run will produce:
/records_folder/{process_name}/{run_id}/
records_logs.json # full structured logs (merged from previous runs)
records_report.html # human-readable dashboard
/images/ # attached screenshots
Plus a zip archive on demand.
Advanced usage
Continue an existing run (merges history automatically):
configure_record_tracing("records_folder") record = MyRecord(id="rec_001") # picks up previous traces record.status = Status.COMPLETED dump_records()Add an image trace:
record.log_trace("Reviewed", reason="Visual QC", image="path/to/image.png")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file t_record_lib-0.1.1.tar.gz.
File metadata
- Download URL: t_record_lib-0.1.1.tar.gz
- Upload date:
- Size: 14.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e2937a724a05e23e37dd0830a47b5052682915664cc2ca4a6b71bc534dd3b8f0
|
|
| MD5 |
af03aef167895fa5f05ea9c8b0445b32
|
|
| BLAKE2b-256 |
e9c8453f427bd5e2bb8143510fd6b1bf8557f16258de9b257189b27e71c96b10
|