From 14e838a798e4ecbe7ff88c14a77f4356c7db1404 Mon Sep 17 00:00:00 2001 From: inference-bot Date: Fri, 11 Sep 2026 13:52:21 -0600 Subject: [PATCH] Style welcome email to match landing page (centered card, logo, green button) --- app/main.py | 79 +++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 64 insertions(+), 15 deletions(-) diff --git a/app/main.py b/app/main.py index 020b120..b5bd702 100644 --- a/app/main.py +++ b/app/main.py @@ -296,7 +296,12 @@ def send_email(to: str, subject: str, text_body: str, html_body: str | None = No def welcome_email(name: str) -> tuple[str, str, str]: - """Build the welcome email (subject, text, html) for a new member.""" + """Build the welcome email (subject, text, html) for a new member. + + The HTML uses a centered, card-style layout matching the landing page + (cream background, forest-green button, Figtree-like system fonts). + Email HTML is table-based for client compatibility; no external assets. + """ join_url = f"{PORTAL_BASE}/join" subject = "Welcome to the Inference Cooperative — finish your setup" text = ( @@ -310,20 +315,64 @@ def welcome_email(name: str) -> tuple[str, str, str]: "Questions? Reply to this email or write to info@inference.coop.\n\n" "— The Inference Cooperative\n" ) - html = ( - f"

Hi {name},

" - "

Thanks for joining the Inference Cooperative!

" - "

To finish setting up your account and start using private AI chat, " - "click the button below and connect your Open Collective account:

" - f'

' - "Finish setup

" - "

This takes about a minute. You'll then get an account-setup email " - "from our platform.

" - '

Questions? Reply to this email or write to ' - 'info@inference.coop.

' - "

— The Inference Cooperative

" - ) + html = f""" + + + + + + + +
+ + + + + + + + + + +
+ + +
+

Welcome, {name}

+

Thanks for joining the Inference Cooperative.

+

Finish setting up your account to start using private AI chat.

+ Finish setup +

This takes about a minute. You'll then get an account-setup email from our platform.

+
+ Questions? Reply to this email or write to info@inference.coop.
+ The Inference Cooperative · inference.coop +
+
+ +""" return subject, text, html