Client-Facing Transforms¶
The client-facing module transforms technical audit output into plain English suitable for non-technical stakeholders, project managers, and clients.
What It Does¶
The client_facing.py script applies several transformations:
Jargon Replacement¶
Technical terms are mapped to plain English equivalents:
| Technical Term | Client-Facing Term |
|---|---|
| HSTS | Browser security header |
| CSP | Script protection policy |
| X-Frame-Options | Clickjacking protection |
| DNSSEC | Domain security signatures |
| CAA | Certificate authority restrictions |
| CLS | Visual stability |
| LCP | Main content load time |
| FCP | First visible content time |
| TBT | Responsiveness delay |
| hreflang | Language targeting tags |
| JSON-LD | Search engine data markup |
| robots.txt | Search engine access rules |
| noindex | Hidden from search engines |
| canonical | Preferred page URL signal |
Priority Labels¶
| Internal | Client-Facing |
|---|---|
| P0 Critical | Urgent |
| P1 High | Important |
| P2 Medium | Recommended |
| P3 Low | Nice to have |
Other Transforms¶
- Code blocks removed from fix suggestions (replaced with plain descriptions)
- Module names simplified (e.g. "dns_infra" becomes "Website Infrastructure")
- Effort labels expanded ("low" becomes "Quick fix -- under 30 minutes")
- Score descriptions added (78 becomes "78/100 -- Good, a few areas to improve")
Usage¶
In the HTML Dashboard¶
python scripts/generate_html_dashboard.py \
--scores scores.json \
--url example.com \
--output-dir ./reports \
--client-facing
In Conversation¶
You: Generate a client-facing report for the audit
You: Explain these findings in non-technical language
Programmatic Access¶
from client_facing import transform_findings, transform_score_label
# Transform a list of findings
client_findings = transform_findings(technical_findings)
# Transform a score to a label
label = transform_score_label(78)
# Returns: "78/100 -- Good, a few areas to improve"
When to Use¶
- Client deliverables -- reports going to non-technical stakeholders
- Project manager briefings -- translating audit results for prioritisation
- Executive summaries -- high-level overview without technical depth
- Sales proposals -- showing potential clients what needs fixing
When NOT to Use¶
- Developer handoff -- developers need the technical details and code examples
- CI/CD gates -- automated systems need the raw data
- Internal review -- your team likely understands the jargon