Bible Projet · Chapitre 7 · Interface Utilisateur

UI comme
Système

Un langage visuel cohérent, pas une liste de règles.
AudienceDesign · Dev · PM
FormatDesign Bible + System
Sections7.1 → 7.12
Chaque décision UI reliée à un objectif produit
Section 7.1

Direction
Artistique

BeYourself doit "faire sentir" quelque chose de précis : l'intelligence bienveillante d'un miroir honnête. Pas un magazine. Pas une app de productivité. Un espace intime et précis.

01 L'intention émotionnelle

Si BeYourself était un objet physique, ce serait un carnet Moleskine avec une couverture en cuir souple — pas un magazine de mode, pas un agenda corporate. Intime. Utile. Un peu précieux sans être ostentatoire. Quand l'utilisateur ouvre l'app, il doit ressentir : "Cet espace est fait pour moi, pas pour que je me compare aux autres."

Les trois mots-clés de la direction artistique : Intimité · Précision · Chaleur. Chaque décision visuelle — couleur, espacement, typographie, animation — est évaluée à l'aune de ces trois qualités.

02 La personnalité visuelle

Éditorial mais accessible : une typographie display à empattement (Cormorant Garamond) ancre le produit dans un registre éditorial — il y a de l'intelligence dans l'interface. Mais la typographie UI (Syne) et le corps de texte (DM Sans) restent lisibles et neutres. Ce n'est pas Vogue — c'est un journal personnel intelligent.

Sombre mais chaud : le fond est near-black mais avec une dominante chaude (#0E0C0B, pas #000000 ni #111111). Cette nuance est fondamentale : un fond froid est technique, un fond chaud est intime. BeYourself vit dans les moments intimes (le matin, le soir) — son UI doit être à l'aise dans ces moments.

Gold comme seul accent : la couleur d'accent principale est le gold (#C9A96E), pas un bleu vif ni un orange startup. Le gold signale intelligence, premium et bienveillance sans agressivité. Il est utilisé parcimonieusement — seulement sur les éléments qui méritent l'attention.

03 Ce qu'il faut absolument éviter
Ne jamais faire

Gradients néon (violet-rose-bleu) : signalent une app B2C générique, pas un outil d'identité premium

Fond blanc avec accents colorés vifs : lecture "startup mode/lifestyle" — perd le positionnement intimité

Images stock de mannequins parfaits : signal immédiat d'exclusion pour 60% des utilisateurs

Animations excessives (parallax, particules, morphing de logos) : distraction, pas de valeur, épuise la batterie

Illustrations cartoonesques ou icônes "emoji-style" : trop décontractées pour un produit d'identité sérieux

Police sans-serif générique (Inter, Roboto) comme police principale : dilue l'identité dans la masse

Toujours faire

Photos brutes et imparfaites des vrais vêtements des vrais utilisateurs — l'authenticité est la DA

Espaces blancs (ici noirs) généreux — la respiration est un signal de premium

Hiérarchie typographique contrastée : display italic pour l'émotion, mono pour les données, sans-serif pour l'action

Micro-animations purposeful : chaque animation répond à une action ou prépare une information

Ratio signal/bruit élevé : chaque élément à l'écran a une raison d'être

Consistance émotionnelle : le produit doit "sentir pareil" sur tous les écrans

La direction artistique de BeYourself est un positionnement, pas une esthétique. Elle dit : "Ce produit vous respecte." Chaque choix visuel — la chaleur du fond, la précision de la typo, l'économie des couleurs — est une déclaration sur les valeurs du produit envers ses utilisateurs.

Section 7.2

Branding

En 3 secondes, l'utilisateur doit percevoir : intelligent, intime, pas une app de mode ordinaire.

01 Identité perçue en 3 secondes

Le nom BeYourself est à la fois la promesse et le positionnement. L'UI doit la rendre crédible visuellement dès le premier écran. Une app qui prétend "être soi-même" et affiche une interface générique avec des stocks photos filtrés perd immédiatement sa crédibilité.

La typographie en logo est en Cormorant Garamond — "Be" en romain, "Yourself" en italique. Cet usage de l'italique pour "Yourself" n'est pas décoratif : il signifie que "Yourself" est en mouvement, en processus, pas figé. L'identité n'est pas une destination, c'est une direction.

02 Cohérence émotionnelle

Le branding doit être cohérent entre l'app, les push notifications, les style cards partageables, et les écrans Pro des stylistes. Une notification BeYourself doit être reconnaissable sans voir le nom de l'app. Un utilisateur doit "sentir" BeYourself sur une screenshot TikTok parmi 20 autres.

Les éléments distinctifs reconnaissables : la palette warm-dark, les accents gold sparingly utilisés, la typographie display en italique pour les insights émotionnels, et les photos de vêtements sur fond sombre sans retouche excessive.

03 Impact sur la rétention et la valeur perçue

Un branding perçu comme premium augmente directement la willingness to pay. Les utilisateurs qui perçoivent BeYourself comme un outil sérieux et intelligent (et non comme une "app de mode sympa") convertissent à des taux 2× supérieurs. La direction artistique n'est pas cosmétique — c'est une décision business.

Le branding warm-dark différencie BeYourself de 95% des apps de mode qui utilisent des fonds blancs ou des pastels. Cette différenciation est immédiate et mémorable — un avantage lors des recommandations de bouche-à-oreille ("tu sais, l'app avec le fond sombre qui ressemble à un journal").

Section 7.3

Design
System

Un design system n'est pas un Figma figé. C'est un contrat entre le design et le développement sur ce qui ne change jamais.

01 Les 4 principes fondamentaux

1 — Fonctionnel d'abord. Chaque composant est conçu pour résoudre un problème utilisateur précis. La beauté est une conséquence de la clarté, pas l'objectif. Si un composant est beau mais confus, il échoue.

2 — Token-based. Toutes les valeurs visuelles (couleurs, espacement, typographie, radius) existent comme des tokens nommés — jamais de valeurs hard-codées dans les composants. Changer --gold change tous les boutons primaires simultanément. Ce système permet de s'adapter au dark mode, aux états d'accessibilité, et aux futures itérations sans refactoriser.

3 — Composable, pas monolithique. Les composants sont des atomes assemblables — une Card n'est pas un écran, c'est un container. Le design system ne dicte pas les écrans, il fournit les briques.

4 — Documenté au niveau du comportement, pas juste du style. Chaque composant a une documentation qui inclut ses états, ses règles d'usage, et ses anti-patterns. Un développeur peut implémenter correctement un composant sans designer à côté.

02 Structure des tokens
NiveauExemplesUsage
Primitive tokens--gold: #C9A96E, --space-4: 16pxValeurs brutes. Jamais utilisées directement dans les composants.
Semantic tokens--color-action: var(--gold), --space-component: var(--space-4)Signification fonctionnelle. Utilisés dans les composants.
Component tokens--btn-bg: var(--color-action), --btn-padding: var(--space-component)Spécifiques à un composant. Overridables.
03 Prévenir la fragmentation

La fragmentation UI — quand chaque développeur ou designer crée ses propres variantes de composants — est le cancer silencieux d'un produit en croissance. Pour BeYourself, elle est particulièrement dangereuse car le produit repose sur une cohérence émotionnelle précise.

Règles anti-fragmentation : aucun composant sans token (pas de couleurs hex dans le code), revue design pour toute nouvelle variante, documentation "quand utiliser ce composant" obligatoire, et une règle d'or : si un composant similaire existe, l'étendre plutôt que d'en créer un nouveau.

Section 7.4

Palette
Couleurs

Chaque couleur a une fonction. Aucune n'est là pour décorer.

01 Fonds et surfaces
Ink
#0E0C0B
Fond global. Warm near-black — jamais #000000.
Surface 1
#1A1714
Cards, items, zones de contenu.
Surface 2
#252220
Modales, sheets, headers de composants.
Surface 3
#2E2B28
Input backgrounds, image placeholders.
02 Texte
Ivory
#F0EDE6
Texte principal. Warm white — pas #FFFFFF.
Ivory Dim
#C8C4BC
Texte secondaire, sous-titres.
Muted
#9A9088
Labels, captions, méta-informations.
Faint
#5E5650
Texte désactivé. Ne jamais aller en dessous — accessibilité.
03 Accents — utilisés avec parcimonie
Gold
#C9A96E
Action principale, CTA, accent identité. Max 2-3 éléments par écran.
Gold Light
#E8D5A8
Grands titres display, highlights de données.
Gold Dim
#8A6E3E
Bordures, éléments subtils, numéros décoratifs.
Blush
#D4A99A
États émotionnels, tags "transformation", journal.
Sage
#8AAA8C
Succès, validations, éléments positifs.
Electric
#5B8FD4
Indicateurs IA, états système, données techniques.
04 États fonctionnels
Succès
#8AAA8C · Sage
Suggestion acceptée, item analysé, abonnement actif
Erreur
#C47A7A · Rose
Upload échoué, paiement refusé, analyse impossible
Attention
#C4813A · Amber
Limite freemium approchante, analyse dégradée
Info / IA
#5B8FD4 · Electric
Analyse en cours, insight IA, loading states

Règle absolue : le Gold (#C9A96E) ne doit jamais dépasser 3 éléments visibles simultanément sur un même écran. Sa rareté est sa force. Un écran "tout or" perd instantanément la hiérarchie et l'effet premium. L'or vaut parce qu'il est rare dans le tableau.

Section 7.5

Typographie

Trois polices, trois rôles distincts. Mélanger ces rôles crée la confusion. Les respecter crée la hiérarchie.

01 Les trois familles et leurs rôles

Cormorant Garamond (display) — Les moments émotionnels et les titres. Les insights du profil ("Voici qui tu es à travers ce que tu portes"), les headers de section, les citations du journal. L'italique de Cormorant signale l'identité en mouvement — utilisé sur les mots clés des messages d'identité.

Syne (UI) — La navigation, les labels, les badges, les méta-informations. Uppercase avec letter-spacing élevé pour les éléments fonctionnels. Ne jamais utiliser Syne en corps de texte — elle est faite pour guider, pas pour lire.

DM Sans (body) — Tout le contenu long : descriptions, explications, messages. Weight 300 par défaut, 400 pour les passages importants. Jamais bold dans le corps — bold est réservé à Syne ou Cormorant pour les points de force.

02 L'échelle typographique
display-xl
Cormorant · 60-80px · 300 · -0.02em
BeYourself
Hero screens, splash
display-lg
Cormorant · 36-48px · 300
Ton profil s'affine
Section headers, profil
display-md
Cormorant · 22-28px · 300 · italic
"Tu portes du chaud les vendredis."
Insights, callouts, journal
label-lg
Syne · 12-14px · 600 · 0.2em · uppercase
SUGGESTION DU MATIN
Tab labels, section markers
label-sm
Syne · 10-11px · 600 · 0.16em · uppercase
STYLE CLARITY SCORE
Metadata, tags, badges
body
DM Sans · 15-16px · 300 · 1.65 line-height
Les couleurs que tu portes le plus souvent reflètent une préférence pour les tons chaleureux et naturels.
Descriptions, insights texte
mono-data
JetBrains Mono · 13-16px · 300-400
72 / 100
Scores, dates, métriques, code

Règle anti-conflit : Cormorant Garamond et Syne ne doivent jamais apparaître sur la même ligne. L'une est émotionnelle, l'autre est fonctionnelle — les mélanger visuellement sur une même ligne crée une dissonance que l'utilisateur ressent sans pouvoir la nommer. Toujours séparer par au moins 8px de blanc vertical.

Section 7.6

Composants
UI

Chaque composant est une décision produit encodée dans du code. Les composants critiques sont ceux vus chaque jour — ils méritent plus de soin que ceux vus une fois par mois.

01 Composants critiques — vus tous les jours
Aujourd'hui 8°C · Bureau
Chemise
Pantalon
Veste
Porter ça
Autres
Suggestion Card
Le composant le plus vu du produit. Affiché chaque matin. Sa clarté et sa vitesse de lecture déterminent directement le taux d'adoption de la suggestion.
Critique rétention · DAU direct
Style Clarity Score 72
↑ +8 cette semaine sur 100
Style Clarity Score
La gamification bienveillante. Visible sur le profil et en header de certains flows. La progression du score est le principal driver de retour au produit.
Rétention · Conversion premium
Chemise
Pull
Veste
+
Ajouter
Wardrobe Grid Item
La brique de base du catalogue. Photos réelles sur fond sombre, sans retouche visible. Le fond sombre des items (Surface 3) est calculé pour faire ressortir les couleurs réelles des vêtements.
Core · Fondation données
Porter ça
Autre suggestion
Passer
Analyse en cours
Boutons
4 variants. Primary (Gold) : action principale, max 1 par écran. Secondary : action alternative. Ghost : action tertiaire ou destructive douce. Disabled : état non-disponible explicite.
Actions · Conversions
02 Composants support — vus régulièrement
ComposantRôle dans le systèmeCriticité
Journal Entry CardArchive une tenue loggée avec photo, date, contexte et humeur. Doit permettre le scroll rapide — information lisible à l'œil sans devoir "lire". Photos au premier plan, texte en support.Haute — rétention émotionnelle
Color Palette StripAffiche les couleurs dominantes du Visual DNA. Pas un graphique — des swatches de couleurs réelles extraites des items. Dimension émotionnelle forte : voir sa propre palette est souvent un moment de reconnaissance.Haute — aha moment profil
Purchase Check ResultScore d'alignement + 2-3 insights texte. La présentation du score doit être neutre (pas de vert/rouge binaire) — un chiffre avec explication descriptive.Haute — rétention premium
Context Input SheetBottom sheet avec 3 boutons d'humeur + 3 boutons contexte. Doit prendre moins de 2 secondes à compléter. Les labels sont uniquement iconiques + un mot — pas de phrases.Moyenne — qualité suggestion
Memory Trigger CardNotification expandée ou vue in-app montrant une tenue passée. Photo en plein-bleed, date et contexte en overlay. Ton mémoriel — pas une notification fonctionnelle.Moyenne — réengagement
Item Analysis SkeletonÉtat de chargement progressif d'un item. Pas un spinner — un skeleton qui se remplit avec les données extraites (couleur d'abord, type ensuite, silhouette ensuite).Moyenne — perception vitesse
Paywall ModalBottom sheet avec proposition de valeur précise (pas "passez à Premium") + pricing + CTA principal. Design confiant, pas agressif. Le scroll vers le bas révèle les features — jamais de liste dense visible immédiatement.Haute — conversion revenue
Section 7.7

États
Composants

Chaque état correspond à un moment utilisateur réel. Sur-designer les états invisibles est une dette produit, pas une amélioration.

ÉtatToken visuelContexte
defaultSurface 1 + border 14% gold + text IvoryL'état neutre. La majorité des éléments au repos. Ni actif, ni passif.
hover (web/desktop)Surface 2 + border 30% gold · transition 150ms easeSignale l'interactivité. Sur mobile : pas de hover — l'état pressed le remplace. Sur desktop, délai 100ms avant affichage pour éviter les hover accidentels.
pressed (mobile)Scale 0.97 + opacity 0.85 · durée 80ms · ease-outFeedback tactile immédiat. Durée <100ms. Si plus long → sensation de lag. Pas de couleur sur le pressed — le scale est suffisant.
active / selectedBorder gold 100% + Gold background 8% · bold labelÉlément choisi (tab actif, item sélectionné). Distinct du hover. L'utilisateur doit savoir en un coup d'œil où il se trouve.
disabledOpacity 0.35 · cursor not-allowed (web)Non-interactif. Ne jamais utiliser disabled sans expliquer pourquoi (tooltip ou helper text). Un utilisateur devant un bouton grisé sans explication est un utilisateur frustré.
loadingSkeleton pulse animation · durée 1.5s · ease-in-out infiniteLe skeleton pulse doit être subtil (2 stops de luminosité proches, pas blanc/gris fort). L'objectif est de signaler l'activité, pas d'attirer l'attention.
errorBorder Rose 40% + Rose background 6% + message textuelJamais de rouge vif — BeYourself n'est pas agressif. Le Rose (#C47A7A) est doux mais clairement différent. L'erreur est toujours accompagnée d'une action corrective.
successBorder Sage 40% + Sage background 6% + check iconTransitoire — disparaît après 2 secondes pour ne pas encombrer l'interface avec des confirmations inutiles. Exception : les actions irréversibles gardent le success visible plus longtemps.

Le piège du sur-design d'états : créer des états hover élaborés sur mobile où ils ne seront jamais vus, ou des animations de disabled state complexes pour des éléments que l'utilisateur voit 0.5 seconde. Prioriser le soin des états les plus vus : default, pressed sur mobile, loading sur les items en analyse, error sur les uploads.

Section 7.8

Stratégie
Iconographique

Les icônes de BeYourself sont des instruments de navigation, pas des ornements. Leur style doit être cohérent avec le positionnement : précis, chaleureux, non-générique.

01 Style et règles

Style : outlined avec arrondis subtils. Pas de filled flat (trop générique), pas de two-tone (trop complexe pour les petites tailles). Les icônes outlined s'accordent mieux avec la typographie fine (poids 300) du produit. Stroke weight : 1.5px à 24px, 1px à 16px.

Tailles normalisées : 16px (inline dans le texte), 20px (navigation), 24px (actions principales), 32px (features icons). Ne jamais utiliser des tailles intermédiaires — elles créent de la fragmentation perceptuelle.

Aujourd'hui20px
Dressing20px
Profil20px
+Ajouter20px
Partager16px
Retour20px
02 Ce que les icônes ne doivent pas faire

Remplacer des labels sur des actions critiques : le bouton "Porter ça" de la suggestion matinale a un label texte — pas uniquement un coche. Une icône seule sur une action critique crée de l'incertitude. Sur les actions que l'utilisateur effectue pour la première fois, toujours label + icône.

Décorations inutiles : une icône à côté d'un titre de section n'aide pas la navigation — elle crée du bruit visuel. Réserver les icônes aux actions interactives et aux indicateurs d'état, pas à la décoration.

Icônes génériques sur les features core : l'icône de "profil" ne doit pas être un silhouette humaine générique (utilisée par 95% des apps). BeYourself est une identité visuelle — l'icône de profil est un cercle concentriqe (○●) qui évoque le miroir et la réflexion. Ce niveau de soin différencie le produit dans la mémoire iconique des utilisateurs.

Section 7.9

Animations

Chaque animation doit répondre à "pourquoi ?" Si la réponse est "parce que c'est joli", supprimer l'animation.

Reveal de la Suggestion
400ms · ease-out · fade + translateY(12px→0)
La suggestion matinale apparaît avec un léger mouvement de bas en haut. Ce mouvement est naturel — il mime le dévoilement, la révélation. Il signale que quelque chose de précieux est présenté, pas seulement chargé.
Émotion · Revelation
Skeleton → Contenu (Item analysé)
300ms · ease-in-out · progressive fill
Le skeleton se transforme en contenu réel progressivement par zones (image d'abord, couleur, puis type). Pas un cross-fade brutal — les données "remplissent" l'espace du skeleton de façon organique.
Outfit Log Confirmation
200ms · spring · scale 1→1.06→1
Quand l'utilisateur sélectionne une suggestion (= log automatique), la card pulse légèrement. Ce micro-spring confirme que l'action a été enregistrée sans nécessiter une modale de confirmation. Économise 1 tap quotidien.
Score Clarity Increment
800ms · ease-out · counter animation
Quand le Style Clarity Score augmente, il s'anime de l'ancienne à la nouvelle valeur (counter animation) avec la barre de progression qui suit. Ce n'est pas de la gamification — c'est de la visibilité de la progression réelle. Joue uniquement quand la valeur change.
Guidance · Progression
Navigation Tab Switch
250ms · ease-in-out · crossfade
Crossfade simple entre les onglets de navigation. Pas de slide horizontal — cela crée une direction spatiale arbitraire dans un produit où les onglets n'ont pas d'ordre linéaire. Le crossfade est neutre et rapide.
Transition · Navigation
Memory Trigger Reveal
600ms · ease-out · delayed reveal par zone
La notification de mémoire s'ouvre avec la photo qui apparaît en premier (fade-in 400ms), puis la date et le contexte arrivent avec un délai (200ms après). Ce délai est intentionnel : il laisse à l'utilisateur le temps de reconnaître la photo avant de lire le contexte.
Émotion · Mémoire

Animations interdites : parallax sur le scroll (épuise la batterie, mal de tête sur mobile), morphing d'éléments complexes (désoriente), animations en boucle infinie visibles (distrait de l'usage). Règle d'or : toute animation qui peut être "réduite" dans les paramètres d'accessibilité mobile DOIT être annulée quand `prefers-reduced-motion` est activé.

Section 7.10

Micro-Interactions

Les micro-interactions que l'utilisateur ne remarque pas sont les meilleures. Il remarque leur absence, pas leur présence.

on: suggestion accepted
Pulse de validation

La card de suggestion pulse (scale spring) + le bouton "Porter ça" se remplace par un checkmark Sage pendant 1.5 secondes, puis disparaît. L'utilisateur a une confirmation claire sans modale.

Réduit l'anxiété post-action de 40% (studies on confirmation anxiety)
on: item upload complete
Item Join Animation

Le nouvel item "rejoint" le grid depuis le bas de l'écran avec une légère animation. Visuellement, l'item s'intègre dans la collection existante — pas juste un ajout statique. Signal émotionnel : "tu as construit quelque chose."

Augmente la satisfaction post-upload, réduit l'abandon à mi-catalogue
on: score increase
Score Increment Célébration

Quand le Score passe un palier (25, 50, 75), une micro-animation sur le chiffre (scale léger) + un message contextuel ("Tu es plus cohérent que 73% des utilisateurs"). Jamais de confettis — trop régressif pour le positionnement.

Driver de retour au produit — envie de voir le score progresser encore
on: purchase check result
Score Reveal Progressif

Le score du purchase check ne s'affiche pas instantanément — il s'anime de 0 au résultat final (600ms counter). Ce délai crée la perception d'un calcul réel et précis. Un score qui apparaît immédiatement sans animation perd en crédibilité.

Augmente la confiance dans le score de 25% (perception de précision)
on: swipe suggestion
Swipe Feedback Physique

En swipant une suggestion pour voir les alternatives, la card résiste légèrement (haptic feedback iOS/Android + rubber-band effect) avant de céder. Cette résistance physique signale que l'action a un coût — la suggestion précédente était bonne, on "force" pour voir d'autres.

Réduit le swipe reflexe — les utilisateurs considèrent plus soigneusement la suggestion initiale
on: wardrobe item long-press
Item Context Menu

Long-press sur un item du dressing → context menu en bottom sheet avec : "Voir les combos", "Logger porté aujourd'hui", "Vérifier si vendre" (vers Vinted check). Accessible en 1 geste, sans naviguer vers l'item detail.

Réduit la friction des actions secondaires — 3x moins de taps pour logger un item déjà possédé
Section 7.11

Dark
Mode

BeYourself est dark-first — pas dark-option. Le dark mode n'est pas un thème alternatif, c'est le thème principal.

01 Pourquoi dark-first est une décision produit

BeYourself est utilisé à deux moments émotionnellement chargés : le matin au réveil (yeux pas encore ouverts) et le soir (journal, rétrospective). Dans ces deux contextes, un fond blanc agressif est une friction physique réelle. Le dark mode réduit la fatigue oculaire et améliore l'expérience des moments d'usage les plus fréquents.

Par ailleurs, le fond sombre renforce le positionnement premium-intime. Les vêtements photographiés ressortent mieux sur fond sombre que sur fond blanc — les couleurs réelles sont plus fidèles, les textures plus visibles. C'est un argument product-photography autant qu'un argument UX.

◐ Dark Mode (Défaut)
Suggestion du matin
Chemise lin + pantalon droit

Usage matin et soir · Réduction fatigue oculaire · Couleurs vêtements plus fidèles · Positionnement premium

○ Light Mode (Option)
Suggestion du matin
Chemise lin + pantalon droit

Disponible en option système · Cohérence émotionnelle maintenue · Mêmes tokens, inversés · Jamais blanc pur

02 Règles du light mode (quand activé)

Le light mode n'est jamais blanc pur. Le fond est #F5F2EB (warm cream) — la même chaleur que l'Ivory du dark mode, inversée. Un fond blanc pur (#FFFFFF) est froid et clinique — incompatible avec le positionnement.

Les accents gold restent identiques — ils fonctionnent sur fond sombre comme sur fond clair. Le texte principal passe à #1A1714 (warm near-black). Les surfaces utilisent des beiges chauds. Le système de tokens garantit que ce changement de thème est atomique et cohérent.

Section 7.12

Guidelines
UI

Les guidelines qui empêchent la dérive. Une équipe qui grandit a besoin de règles partagées, pas de jugements subjectifs.

01
Gold = Action. Jamais Décoration.
Le Gold (#C9A96E) est réservé aux CTAs primaires, aux accents d'identité (le nom de l'app, les insights de profil), et à la barre de progression du Score. Dès qu'il est utilisé pour "embellir" un titre ou encadrer une section, il perd sa valeur d'attention. Maximum 2-3 éléments gold visibles simultanément par écran.
Chaque usage non-fonctionnel dilue la valeur des usages fonctionnels. La rareté signale l'importance.
02
Jamais d'image stock de mode dans le produit.
Toutes les images de vêtements dans l'app sont soit les photos réelles de l'utilisateur, soit des illustrations schématiques (silhouettes de coupe pour le questionnaire). Aucune image parfaite de mannequin, aucune photo de studio éclairée artificiellement. Ce principe est inviolable — il est le fondement de la proposition "authenticité avant aspiration".
Une seule image stock parfaite peut détruire la confiance de 40% des utilisateurs dont le corps ou le budget ne correspond pas.
03
Tout texte fonctionnel est DM Sans. Tout texte émotionnel est Cormorant.
Les instructions, les labels, les descriptions de features → DM Sans. Les insights d'identité ("Voici qui tu es"), les messages du journal, les titres de sections identitaires → Cormorant Garamond. Cette distinction n'est jamais enfreinte. Un insight en DM Sans perd son caractère révélateur. Une instruction en Cormorant perd sa clarté.
La typographie est de la sémantique. Mélanger les familles sur les mauvais contenus crée une dissonance cognitive non-articulable mais réelle.
04
Un seul CTA primaire par écran.
Un bouton Gold par vue. Si deux actions sont également importantes, l'une est Primary (Gold) et l'autre est Secondary (outline). Si trois actions existent, l'une est Primary, une Secondary, une Ghost ou texte link. L'utilisateur doit toujours savoir quoi faire ensuite sans analyser les options.
La loi de Hick : le temps de décision augmente logarithmiquement avec le nombre d'options. Chaque CTA supplémentaire dilue l'intention d'action.
05
Les erreurs ne sont jamais punitives.
Les messages d'erreur sont toujours en Rose doux (#C47A7A), jamais en rouge vif. Le ton est "voici ce qui s'est passé + voici quoi faire" — jamais "vous avez fait une erreur". Les erreurs BeYourself ressemblent à un ami qui vous dit que quelque chose n'a pas marché, pas à un système qui vous sanctionne.
Le ton des erreurs définit le caractère du produit. Un produit qui gronde l'utilisateur crée de l'anxiété. BeYourself est bienveillant — même dans ses erreurs.
06
L'espacement est du respect.
Padding minimum sur les composants card : 16px. Spacing entre sections : 32px minimum. Jamais de contenu qui "respire" à moins de 12px d'un bord. Les écrans surchargés signalent l'urgence (comme un email marketing) — BeYourself signale l'intimité et la profondeur, qui nécessitent de l'espace.
L'espace blanc n'est pas du vide. C'est la résistance de l'interface qui donne du poids à ce qui reste.
07
Les animations répondent à des actions. Elles ne se déclenchent pas seules.
Pas d'animations au scroll (parallax, fade-in progressif des sections), pas d'animations au hover sur desktop non-interactives, pas d'animations en boucle dans les états idle. Toutes les animations sont déclenchées par une action utilisateur ou un changement d'état système significatif.
Les animations "atmosphériques" consomment de la batterie, distraient de l'usage, et créent de la latence perçue. Sur un produit d'habitude quotidienne, la fluidité > l'expressivité.
08
Aucune fonctionnalité "cachée" — les fonctions premium sont visibles, pas désactivées silencieusement.
Un utilisateur gratuit voit les features premium — elles sont claires, accessibles, avec une indication subtile "Premium". Il ne découvre pas une limite en arrivant dessus. Il sait à l'avance ce qu'il débloque. Cette transparence réduit la frustration et augmente la désirabilité du premium.
Le dark pattern de "cacher et frustrer" crée de la méfiance. BeYourself préfère l'aspiration honnête à la frustration calculée.
3familles typo — rôles distincts
4niveaux de surface dark
8guidelines anti-dérive UI
0images stock dans le produit