[object Object]

← back to Dw Signup Fulfillment

theme proposal: returning sign-in front-and-center (email code + Google, no password), remove Forgot-password

26d014b357a93127e2658f570c572501a7eaed4d · 2026-07-28 09:48:39 -0700 · Steve

Files touched

Diff

commit 26d014b357a93127e2658f570c572501a7eaed4d
Author: Steve <steve@designerwallcoverings.com>
Date:   Tue Jul 28 09:48:39 2026 -0700

    theme proposal: returning sign-in front-and-center (email code + Google, no password), remove Forgot-password
---
 docs/theme-modal-proposal.md | 29 ++++++++++++++++++++++++++++-
 1 file changed, 28 insertions(+), 1 deletion(-)

diff --git a/docs/theme-modal-proposal.md b/docs/theme-modal-proposal.md
index 97bcaa8..d78023b 100644
--- a/docs/theme-modal-proposal.md
+++ b/docs/theme-modal-proposal.md
@@ -27,6 +27,31 @@ signups automatically).
 
 ---
 
+## (0) RETURNING SIGN-IN — front and center (Steve: "very important")
+
+Old accounts must sign in easily. The store is passwordless New Customer Accounts, so
+**every existing customer signs in with just their email → a 6-digit code** (no password,
+even if they had one before). The modal must make this the FIRST, most obvious action —
+not buried under the tier/offer pitch.
+
+Layout order in the modal, top → bottom:
+1. **Heading:** "Welcome back" / "Sign in to your account".
+2. **PRIMARY sign-in block (returning customers):**
+   - `[ Sign In ]` button → `{{ routes.account_login_url }}` (hosted portal asks email → emails a code).
+   - `[  Continue with Google ]` (section (c) below).
+   - Caption, muted: **"Returning customer? Just enter your email — no password needed."**
+3. **Divider:** "New to Designer Wallcoverings?"
+4. **New-signup block (below, never blocks sign-in):** the Retail / Professional choice +
+   the "3 free samples" framing (sections (a)/(b)).
+
+**REMOVE the "Forgot password" link entirely** — there are no passwords on this store, so it
+is dead and actively confusing to a returning customer. (Handled in (b2) AFTER.)
+
+Net effect: a returning client opens the modal and the very first thing they see is "Sign
+in → your email, no password." One obvious path, no hunting.
+
+---
+
 ## (a) RETAIL copy — stop implying instant free samples
 
 The current header ("Up to 10 Free Samples" + "3 free samples") reads as an instant
@@ -146,11 +171,13 @@ AFTER:
 
       <div class="dwsm-foot">
         New to Designer Wallcoverings? <a href="{{ routes.account_register_url }}">Create account</a>
-        &nbsp;&middot;&nbsp; <a href="{{ routes.account_login_url }}#recover">Forgot password</a>
       </div>
     </div>
 ```
 
+> The `#recover` "Forgot password" link is **removed** (per section (0)) — the store is
+> passwordless, so it leads nowhere useful and confuses returning customers.
+
 ### (b3) Toggle the two panels in the existing `setType()` + wire the trade submit
 
 The snippet already has `setType(type)` (lines 83–86). Extend it to reveal the trade

← 38fc598 5x: REPORT.md — two consecutive clean sweeps; admin Approve  ·  back to Dw Signup Fulfillment  ·  go-live prep: CORS for cross-origin /trade/apply + .deploy.c 80fab35 →