Skip to content

The v1 return story: welcome-back copy, and the launch email's images - #166

Merged
xuelink merged 2 commits into
mainfrom
claude/welcome-back-signin-routes
Sep 9, 2026
Merged

The v1 return story: welcome-back copy, and the launch email's images#166
xuelink merged 2 commits into
mainfrom
claude/welcome-back-signin-routes

Conversation

@xuelink

@xuelink xuelink commented Sep 9, 2026

Copy link
Copy Markdown
Member

Two things the v1 launch email needs from this repo.

1. /welcome-back was sending returning users into the one route that fails

The page opened with "You have to sign up again — use the same email address you used before", and that is the one way into a v1 account that does not work. Every v1 account already has a user row, so a sign-up with that address creates nothing: Better Auth answers it exactly as it answers a fresh sign-up (anti-enumeration) and the person waits for a verification mail that never comes.

The first block now says what the account actually is and lists the ways back in — Google or Apple, a sign-in link, forgot password — and what signing up again does instead, which as of langx#1238 is to email a sign-in link for the account they already have. The "your username is reserved" block no longer says "sign up with your old email, verify it" either, since verifying is now one path of four.

Text only, in blocks that already style ul. Nothing starts hidden, so the page still works with csr: dev and no JavaScript — checked against the prerendered build/welcome-back.html, not just the dev server.

2. /email/ — the launch broadcast's images, hosted here

The "v2 is live" broadcast was loading its logo from raw.githubusercontent.com and generating its QR code at open time from api.qrserver.com. Two third parties between a reader's mail client and a picture of ours, on a mail that goes out once to everyone who ever had a v1 account.

file what size
logo.png the rounded logo, for a 40px slot 80 × 80
qr-get-langx-io.png https://get.langx.io, generated with the same qrcode package the API's QR route uses 264 × 264
screen-discover.png Discover, from branding marketing/2.0/screens/discover-top.png 520 × 889
screen-feed.png Community Feed, same source 520 × 889

The two screens go side by side in the email at 260 wide, so they are shipped at 2× for a retina slot. The broadcast already points at https://langx.io/email/…, so it must not be sent until this is merged and deployed.

🤖 Generated with Claude Code

xuelink and others added 2 commits September 8, 2026 20:10
The page opened with "You have to sign up again", which sent returning users
into the one route that is refused: the address already has an account, so the
sign-up creates nothing. It now lists what actually works — Google or Apple, a
sign-in link, forgot password — and says what signing up again does instead,
which as of langx#1238 is to email a sign-in link for the account they have.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
The v2 announcement broadcast pulled its logo from raw.githubusercontent.com
and its QR code from api.qrserver.com. Both are third parties standing between
a reader's mail client and a picture of ours, on a mail going out once to
everyone who ever had a v1 account — and one of them was generating the QR at
open time.

/email/ now holds all four: the logo, the QR (generated with the same qrcode
package the API's own QR route uses, encoding https://get.langx.io), and the
Discover and Feed screens from branding marketing/2.0/screens at 520px wide for
a 260px slot.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@xuelink xuelink changed the title Say the four ways back into a v1 account The v1 return story: welcome-back copy, and the launch email's images Sep 9, 2026
@xuelink
xuelink merged commit b05e081 into main Sep 9, 2026
1 check passed
@xuelink
xuelink deleted the claude/welcome-back-signin-routes branch September 9, 2026 00:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant