Summary #
Right now every notification email tranquil-pds sends (welcome, password
reset, signup verification, email-update) is hardcoded plain text baked
into the binary — crates/tranquil-comms/src/locale.rs's STRINGS_*
constants — and crates/tranquil-comms/src/email/message.rs sets
Content-Type: text/plain unconditionally, with no HTML alternative part.
Running my own instance (haiku.garden, for a small poetry/music community), I'd like these emails to carry basic branding (logo, colors, a friendlier layout) instead of raw plain text. Currently that's impossible without forking and rebuilding the binary, and even then there's no way to change the wording without a fork, since the strings aren't sourced from config or an external template file.
Request #
Ideally, in rough order of usefulness-to-effort:
- Multipart HTML + plain-text emails, with a default HTML template
that at least applies basic styling (not just a
<pre>-style dump of the current plain text) — plain text stays as the fallback part for clients that want it. - Instance-level branding config — e.g. a logo URL / accent color /
instance display name in
config.toml's[email]section, injected into the default template, so self-hosters don't need to fork just to put their own name/color on it. - (Stretch) template overrides — let an instance point to its own template file(s) on disk for full control, for operators who want to go further than the built-in default.
Happy to help test against a real SMTP relay (Spacemail, in our case) if useful, and can share screenshots of what our current plain-text emails look like in the wild if that helps motivate the default template design.
dupe of https://tangled.org/tranquil.farm/tranquil-pds/issues/105 I am assuming :p