Release Mail Tools 0.1.0

This commit is contained in:
2026-09-01 12:39:23 +02:00
commit 9bc0870404
63 changed files with 9850 additions and 0 deletions
+7
View File
@@ -0,0 +1,7 @@
# Accessibility
Workspaces use native headings, labels, buttons, tables, lists, status regions
and keyboard-operable tabs. Focus indicators and system light/dark selection
come from the shared Toolbox shell. Dense tables and previews scroll rather
than clipping; narrow layouts collapse to one column; reduced-motion preference
is respected. Sanitized HTML preview has a descriptive iframe title.
+11
View File
@@ -0,0 +1,11 @@
# Architecture
The React shell lazy-loads one workbench. `core/mime.ts` turns bounded source
text into immutable-looking header and MIME-part records; parsing never creates
DOM. Transfer decoding consumes a global byte budget. Diagnostics, comparison,
canonicalization and redaction are separate pure modules.
Only the selected HTML text is passed through DOMPurify. It is then embedded in
an iframe without sandbox capabilities and with an inner policy that denies all
connections and active content. Attachment downloads are explicit Blob URLs
with sanitized filenames. The service worker caches only same-origin app files.
+15
View File
@@ -0,0 +1,15 @@
# Privacy and security
Messages are read through browser file APIs or pasted text and kept only in
memory. There is no storage, telemetry, analytics, remote-resource request or
server integration. Closing/reloading the page clears the workbench.
Limits reduce accidental resource exhaustion but do not make Mail Tools a
forensic parser. HTML loses links, styling and embedded resources by design.
Downloaded attachments remain untrusted. Authentication results and Received
headers are self-asserted text; no DNS or cryptographic verification occurs.
Focused redaction removes a fixed set of top-level transport/authentication
headers. It does not rewrite nested `message/rfc822` content and can leave names,
addresses, message IDs, MIME metadata, tracking tokens, body content, document
metadata and attachments. Review outputs independently.