From 4b814c9a1721e237242c59b1931af31b9d9af3f1 Mon Sep 17 00:00:00 2001 From: cynarAI <155274210+cynarAI@users.noreply.github.com> Date: Fri, 9 Oct 2026 16:13:38 +0200 Subject: [PATCH] Greet with the header's ev-eyes wordmark and a calmer welcome type scale (#184) Welcome and sign-in now show the same animated wordmark as the sidebar header ("ev" plus the Oo eyes) instead of the teal face. The welcome tagline, subline and buttons drop to the shared title and body sizes. Claude-Session: https://claude.ai/code/session_01Tgvrj34NMnaqvtgvruYQZZ Co-authored-by: Claude --- apps/web/e2e/welcome.spec.ts | 9 +++++---- apps/web/src/pages/Auth.tsx | 4 ++-- apps/web/src/pages/Welcome.tsx | 22 +++++++++------------- 3 files changed, 16 insertions(+), 19 deletions(-) diff --git a/apps/web/e2e/welcome.spec.ts b/apps/web/e2e/welcome.spec.ts index 69e1a39..f2f76db 100644 --- a/apps/web/e2e/welcome.spec.ts +++ b/apps/web/e2e/welcome.spec.ts @@ -1,16 +1,17 @@ import { expect, test } from "@playwright/test"; import { captureScreenshot } from "./helpers"; -test("the welcome and sign-in screens carry the same evOo logo", async ({ page }, testInfo) => { +test("the welcome and sign-in screens carry the evOo wordmark from the header", async ({ + page, +}, testInfo) => { await page.setViewportSize({ width: 390, height: 844 }); for (const scheme of ["dark", "light"] as const) { await page.emulateMedia({ colorScheme: scheme }); await page.goto("/", { waitUntil: "domcontentloaded" }); - await expect(page.getByText("evOo", { exact: true })).toBeVisible(); - await expect(page.locator('img[src="/evoo-logo.svg"]')).toBeVisible(); + await expect(page.locator(".evoo-mascot-container")).toBeVisible(); await captureScreenshot(page, testInfo, `phone-welcome-${scheme}`); await page.goto("/sign-in", { waitUntil: "domcontentloaded" }); - await expect(page.locator('img[src="/evoo-logo.svg"]')).toBeVisible(); + await expect(page.locator(".evoo-mascot-container")).toBeVisible(); await captureScreenshot(page, testInfo, `phone-sign-in-${scheme}`); } }); diff --git a/apps/web/src/pages/Auth.tsx b/apps/web/src/pages/Auth.tsx index f885bec..00cdf40 100644 --- a/apps/web/src/pages/Auth.tsx +++ b/apps/web/src/pages/Auth.tsx @@ -1,6 +1,6 @@ import { Trans, useLingui } from "@lingui/react/macro"; import { readBoundedJsonResponse, signupRequiresEmailVerification } from "@rakazo/core"; -import { Button, Input, Label } from "@rakazo/ui-web"; +import { Button, EvooMascot, Input, Label } from "@rakazo/ui-web"; import { Eye, EyeOff } from "lucide-react"; import { useEffect, useState } from "react"; import { Link, useNavigate, useSearchParams } from "react-router-dom"; @@ -337,7 +337,7 @@ function AuthFrame({ return (
- +

{title}

diff --git a/apps/web/src/pages/Welcome.tsx b/apps/web/src/pages/Welcome.tsx index ed6f141..40d3a4f 100644 --- a/apps/web/src/pages/Welcome.tsx +++ b/apps/web/src/pages/Welcome.tsx @@ -1,4 +1,5 @@ import { Trans } from "@lingui/react/macro"; +import { EvooMascot } from "@rakazo/ui-web"; import { useNavigate } from "react-router-dom"; import { WindowChrome } from "./WindowChrome"; @@ -9,33 +10,28 @@ export function WelcomePage() {
-
-
- -
- evOo -
-
-
-

+

+ +
+

Your specialists. One calm place to talk.

-

+

Simple to start. Expert when you need it.

-
+