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'" - "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""" + + + +
+
|
+