From e2fd2abeb1ecd0021f6a1bd9cf9bab450830dd37 Mon Sep 17 00:00:00 2001 From: MartinBraquet Date: Mon, 8 Jun 2026 23:39:13 +0200 Subject: [PATCH] Improve home page design --- common/messages/de.json | 3 +- common/messages/fr.json | 3 +- web/components/home/home.tsx | 90 +++++++++++++++++++++++------------- 3 files changed, 63 insertions(+), 33 deletions(-) diff --git a/common/messages/de.json b/common/messages/de.json index 6af830d4..6ff3cc4e 100644 --- a/common/messages/de.json +++ b/common/messages/de.json @@ -469,6 +469,7 @@ "home.typewriter.search": "Suchen.", "home.typewriter.connect": "Verbinden.", "home.eyebrow": "Für immer kostenlos · Open Source · Keine Matching-Algorithmen", + "home.cta.primary": "Kostenlos loslegen", "home.cta.secondary": "Erfahre, wie es funktioniert", "home.proof.prefix": "Beigetreten sind ", "home.proof.count": "600+", @@ -1155,7 +1156,7 @@ "profile_grid.undo": "Rückgängig", "profile_grid.unhide_profile": "Wieder in den Suchergebnissen anzeigen", "profiles.dismiss": "Verwerfen", - "profiles.early_growth": "Compass befindet sich in seiner frühen Wachstumsphase — 500+ Mitglieder und ~100 neue Menschen jeden Monat. Erstellen Sie jetzt ein starkes Profil und werden Sie sichtbar, während die Community wächst.", + "profiles.early_growth": "Compass befindet sich in seiner frühen Wachstumsphase — 600+ Mitglieder und ~100 neue Menschen jeden Monat. Erstellen Sie jetzt ein starkes Profil und werden Sie sichtbar, während die Community wächst.", "profiles.filter_guide": "Filtern Sie unten nach Absicht, Alter, Standort und mehr", "profiles.hidden_success": "Profil ausgeblendet. Sie werden diese Person nicht mehr in den Suchergebnissen sehen.", "profiles.interactive_profiles": "Profile sind interaktiv — klicken Sie auf jede Karte, um mehr zu erfahren und Kontakt aufzunehmen.", diff --git a/common/messages/fr.json b/common/messages/fr.json index 7692b4cd..42f6f271 100644 --- a/common/messages/fr.json +++ b/common/messages/fr.json @@ -469,6 +469,7 @@ "home.typewriter.search": "Cherche.", "home.typewriter.connect": "Tisse des liens.", "home.eyebrow": "Gratuit pour toujours · Open Source · Pas d'algorithmes de match", + "home.cta.primary": "Commencer — gratuit", "home.cta.secondary": "Découvre comment ça fonctionne", "home.proof.prefix": "Rejoint par ", "home.proof.count": "600+", @@ -1154,7 +1155,7 @@ "profile_grid.undo": "Annuler", "profile_grid.unhide_profile": "Afficher à nouveau dans les résultats de recherche", "profiles.dismiss": "Fermer", - "profiles.early_growth": "Compass est dans sa phase de croissance initiale — 500+ membres et ~100 nouvelles personnes chaque mois. Construisez un profil solide maintenant et soyez visible alors que la communauté grandit.", + "profiles.early_growth": "Compass est dans sa phase de croissance initiale — 600+ membres et ~100 nouvelles personnes chaque mois. Construisez un profil solide maintenant et soyez visible alors que la communauté grandit.", "profiles.filter_guide": "Filtrez ci-dessous par intention, âge, lieu et plus encore", "profiles.hidden_success": "Profil masqué. Vous ne verrez plus cette personne dans les résultats de recherche.", "profiles.interactive_profiles": "Les profils sont interactifs — cliquez sur n'importe quelle carte pour en savoir plus et entrer en contact.", diff --git a/web/components/home/home.tsx b/web/components/home/home.tsx index fa90561e..5d1e17bd 100644 --- a/web/components/home/home.tsx +++ b/web/components/home/home.tsx @@ -49,7 +49,7 @@ function FeatureCard({icon: Icon, title, text}: FeatureCardProps) {

{title}

-

{text}

+

{text}

) } @@ -57,7 +57,7 @@ function FeatureCard({icon: Icon, title, text}: FeatureCardProps) { function SocialAvatar({letter, gradient}: SocialAvatarProps) { return (
{letter} @@ -74,7 +74,7 @@ function SocialProof({label}: {label: React.ReactNode}) { ] return ( -
+
{avatars.map((av) => ( @@ -88,10 +88,15 @@ function SocialProof({label}: {label: React.ReactNode}) { function QuoteBlock({children}: {children: React.ReactNode}) { return (
- - " - -

{children}

+ + + +

{children}

) } @@ -249,36 +254,57 @@ export function LoggedOutHome() {
{/* ── Hero ── */} -
+
+ {/* Soft radial glow behind the hero for depth. Dark mode uses a brighter, + lighter-hued, faster-falloff core so it reads as light, not brown haze. */} +
+ {t('home.eyebrow', 'Free forever · Open source · No matching algorithms')} -

+

{t('home.title', "Don't Swipe.")}

{/* Typewriter line */} -
+
|
-

+

{t('home.subtitle', 'Find people who share your ')} - {t('home.subtitle.values', 'values')} + {t('home.subtitle.values', 'values')} {', '} - {t('home.subtitle.ideas', 'ideas')} + {t('home.subtitle.ideas', 'ideas')} {t('home.subtitle.and', ', and ')} - {t('home.subtitle.intentions', 'intentions')} + {t('home.subtitle.intentions', 'intentions')} {t('home.subtitle.end', ' — not just your photos.')}

{/* CTAs */} -
- {/**/} +
+ {user === null && ( + + {t('home.cta.primary', 'Get started — free')} + + )} {/* Social proof */} - - {t('home.proof.prefix', 'Joined by ')} - {t('home.proof.count', '600+')} - {t('home.proof.suffix', ' real people worldwide')} - - } - /> +
+ + {t('home.proof.prefix', 'Joined by ')} + {t('home.proof.count', '600+')} + {t('home.proof.suffix', ' real people worldwide')} + + } + /> +
{/* Divider */} @@ -320,13 +348,13 @@ export function LoggedOutHome() { {/* ── Quote ── */} {t('home.quote.prefix', 'Compass is to human connection what ')} - {t('home.quote.linux', 'Linux')} + {t('home.quote.linux', 'Linux')} {t('home.quote.linux_suffix', ' is to software, ')} - {t('home.quote.wikipedia', 'Wikipedia')} + {t('home.quote.wikipedia', 'Wikipedia')} {t('home.quote.wikipedia_suffix', ' is to knowledge, and ')} - {t('home.quote.firefox', 'Firefox')} + {t('home.quote.firefox', 'Firefox')} {t('home.quote.end', ' is to browsing — a public digital good designed to ')} - + {t('home.quote.mission', 'serve people, not profit.')}