Files
workbuddy_skills/open-design/design-systems/slack/DESIGN-fr.md
T
admin 5afeb6b78a ④段整套同步(六节 + P/S/F/J + 模板)+ open-design 移到技能根
一、④段整套同步(用户选候选 A)
- 新增 `references/stage-proto-doc/assets/产品文档模板.html`(16 KB/247 行,从备份拷、转 LF)。
- ④段 SKILL.md 换成备份 15:28 那版,并按模板口径改齐:
  · 「产品文档框架」从「四块+一附录」改成**六节** —— 页面结构/功能清单/使用场景/操作流程/
    跨页与界面状态/待确认与偏离;与模板同构,⛔ 不从空白页重写结构。
  · 编号从 R/S/F 改成 **P 页面/S 场景/F 功能/J 二级功能**,各自唯一、按展示顺序通排。
  · 保留旧版有价值的要求:每项功能补齐 做什么/入口在哪/输入边界/异常与恢复;重点功能三处标红;
    横向流程图每步写清页面/功能/操作/完成判据。
  · 完成标准「七节」→「六节」,自查清单同步换掉「需求」那批条目,补模板与配图两条。
  · 路径 `designs/<项目>/` → `docs/pm/<项目>/ui/`(2 处)。
  · 补回本机那条「每份产出文档开头都要有一张图」的引用(指向主 skill,段内不复述)。
- 主 skill 同步:四段结构表④行、④段沿革、画图小节(④段画页面结构图 + 用户路径)。

二、open-design 移到技能根(用户选候选 A)
- `git mv product-planning/references/stage-delivery/assets/open-design → open-design/`(4178 文件)。
- `.gitignore` 白名单加 `!/open-design/` —— 否则移出去就不再纳入版本控制。
- 引用改 11 处:路径形态 `assets/open-design/...` → `<技能根>/open-design/...`;
  「随段携带的自带件」改称「同根技能」;「路径怎么找」那条改成自带件(段内相对路径)与
  同根技能(`<技能根>/<技能名>/`)两类分开写。
- open-design 自己的 ATTRIBUTION.md 两处同步(它现在与 oil-ui-pro 同层)。
- 副作用(有益):命名闸门读数由 2063 降到 225 —— 此前它把 open-design 里 919 个第三方 md
  当成规则一起扫了;现在只扫本包 23 个 md。已确认④段的 H1 与 4a/4b/4c 子步仍在检查范围内。

三、验收
- check_naming.py --ws E:/ProgramData/AIProject/contentm_agent = 通过 225 / 失败 0 / 提示 27。
- 活文件里 `assets/open-design` 残留 0;工作区 CRLF 文件 0。
2026-10-15 21:17:28 +08:00

14 KiB
Raw Blame History

Système de design inspiré de Slack

Category: Productivité & SaaS Plateforme de communication professionnelle. Palette primaire aubergine, palette multi-accents pour le logo, surfaces claires avec barre latérale sombre, ton chaleureux et accessible.

1. Thème visuel et atmosphère

L'identité de Slack repose sur l'idée que le travail doit se sentir humain et même un peu amusant. La surface canonique est claire — des zones de contenu blanches avec une barre latérale aubergine profonde (#4A154B) — à l'opposé des outils à dominante sombre. Ce contraste est intentionnel : la barre latérale est une ancre de navigation calme et toujours présente, tandis que la zone de contenu est lumineuse et ouverte.

La palette du logo — bleu, vert, jaune, rouge — apparaît principalement dans l'icône dièse et dans les contextes marketing, et non disséminée dans l'interface. Dans le produit lui-même, Slack utilise un système de couleurs sobre et professionnel, avec l'aubergine comme seul ancre de marque.

Caractéristiques principales :

  • Surfaces de contenu prioritairement claires : blanc #FFFFFF et quasi-blanc #F8F8F8
  • Barre latérale aubergine profonde #4A154B — l'élément d'interface le plus reconnaissable de la marque
  • Quatre couleurs d'accent du logo (bleu, vert, jaune, rouge) utilisées avec parcimonie, uniquement comme points forts
  • Larsseit pour les titres (marketing), sans-serif système pour l'interface
  • Arrondi mais pas cartoonesque : rayon de 4–8px sur la plupart des composants
  • Dense mais aéré : rangées de messages compactes avec une hiérarchie de fils claire
  • Ton chaleureux et conversationnel — émojis, réactions et illustrations sont de première importance

2. Palette de couleurs et rôles

Primaire de marque

Jeton Hex Rôle
--color-aubergine #4A154B Arrière-plan de la barre latérale, couleur principale de la marque
--color-aubergine-dark #350d36 États de survol sur les surfaces aubergine
--color-aubergine-light #611f69 Mise en évidence de l'élément actif dans la barre latérale

Couleurs d'accent du logo (à utiliser avec parcimonie — points forts, icônes, marketing uniquement)

Jeton Hex Nom Rôle
--color-blue #36C5F0 Bleu ciel Icônes de canaux, liens, états informatifs
--color-green #2EB67D Vert sarcelle Statut en ligne, états de succès
--color-yellow #ECB22E Or Statut absent, avertissements, points forts
--color-red #E01E5A Rubis Notifications, erreurs, badge de mentions

Surface et arrière-plan

Jeton Hex Rôle
--bg-primary #FFFFFF Zone principale des messages, modales
--bg-secondary #F8F8F8 Panneaux de fils, surfaces secondaires
--bg-tertiary #F1F1F1 Arrière-plans des champs de saisie, états de survol
--bg-sidebar #4A154B Barre latérale gauche (aubergine)
--bg-sidebar-hover rgba(255,255,255,0.1) Survol d'un élément de la barre latérale
--bg-sidebar-active rgba(255,255,255,0.2) Élément actif de la barre latérale
--bg-message-hover #F8F8F8 Survol d'une rangée de message

Couleurs de texte

Jeton Hex Rôle
--text-primary #1D1C1D Texte principal du corps (quasi-noir)
--text-secondary #616061 Horodatages, étiquettes atténuées
--text-sidebar rgba(255,255,255,0.9) Noms des canaux dans la barre latérale
--text-sidebar-muted rgba(255,255,255,0.6) Éléments inactifs de la barre latérale
--text-link #1264A3 Liens en ligne dans les messages
--text-mention #1264A3 Couleur du texte des @mentions

Couleurs sémantiques

Jeton Hex Rôle
--color-success #2EB67D Notifications de succès, états positifs
--color-warning #ECB22E États d'avertissement
--color-danger #E01E5A États d'erreur, actions destructrices
--color-info #36C5F0 Points forts informatifs

Bordure et séparateur

Jeton Hex Rôle
--border-default #DDDDDD Séparateurs standard, bordures de cartes
--border-subtle #F1F1F1 Séparateurs discrets entre les rangées
--border-focus #1264A3 Couleur de l'anneau de focus

3. Règles typographiques

Polices de caractères

Rôle Officielle Substitut web
Titres d'affichage / Marketing Larsseit 'Larsseit', 'Helvetica Neue', Arial, sans-serif
Interface / Corps / Chrome Slack Lato (personnalisé) system-ui, -apple-system, BlinkMacSystemFont, sans-serif
Code / Monospace — 'Monaco', 'Menlo', 'Courier New', monospace

Slack utilise Larsseit pour les titres marketing et une variante Lato personnalisée pour l'interface du produit. Pour une utilisation web, system-ui est le substitut le plus sûr.

Échelle typographique

Niveau Taille Graisse Hauteur de ligne Espacement des lettres Usage
Affichage XL 48px 800 1.1 -1px Titres héros marketing
Affichage L 36px 700 1.15 -0.5px Héros de section
Titre 1 28px 700 1.25 normal Titres de modales, en-têtes de page
Titre 2 22px 700 1.3 normal Titres de cartes, sections de paramètres
Titre 3 18px 700 1.35 normal En-têtes de sous-sections
Corps L 16px 400 1.5 normal Texte des messages, descriptions
Corps 15px 400 1.46667 normal Texte d'interface par défaut (taille de base de Slack)
Corps SM 13px 400 1.38462 normal Métadonnées secondaires
Légende 12px 400 1.33 normal Horodatages, indices
Code 12px 400 1.5 normal Code en ligne, blocs de code

Règles typographiques

  • La taille de corps de base de Slack est 15px — légèrement inférieure à 16px pour plus de densité
  • Canaux non lus : graisse 700 — le gras est le principal indicateur de non-lu
  • Horodatages : 12px --text-secondary, affichés au survol uniquement
  • Blocs de code : arrière-plan #F8F8F8, bordure 1px solid #DDDDDD, border-radius 4px
  • Ne jamais utiliser de tailles de police inférieures à 12px
  • Titres marketing : espacement des lettres -1px pour les grandes tailles d'affichage

4. Styles des composants

Boutons

/* Primary */
.btn-primary {
  background: #4A154B;
  color: #FFFFFF;
  border-radius: 4px;
  padding: 0 16px;
  height: 36px;
  font-size: 15px;
  font-weight: 700;
  border: none;
}
.btn-primary:hover { background: #611f69; }

/* Secondary */
.btn-secondary {
  background: #FFFFFF;
  color: #1D1C1D;
  border: 1px solid #DDDDDD;
  border-radius: 4px;
  padding: 0 16px;
  height: 36px;
  font-size: 15px;
  font-weight: 700;
}
.btn-secondary:hover { background: #F8F8F8; }

/* Danger */
.btn-danger {
  background: #E01E5A;
  color: #FFFFFF;
  border-radius: 4px;
}
.btn-danger:hover { background: #B3114A; }

Champs de saisie

.input {
  background: #FFFFFF;
  border: 1px solid #DDDDDD;
  border-radius: 4px;
  color: #1D1C1D;
  font-size: 15px;
  padding: 8px 12px;
  height: 36px;
}
.input:focus {
  border-color: #1264A3;
  box-shadow: 0 0 0 2px rgba(18,100,163,0.25);
  outline: none;
}

Élément de canal dans la barre latérale

.channel-item {
  height: 28px;
  padding: 0 16px;
  border-radius: 6px;
  color: rgba(255,255,255,0.7);
  font-size: 15px;
  font-weight: 400;
}
.channel-item:hover {
  background: rgba(255,255,255,0.1);
  color: #FFFFFF;
}
.channel-item.active {
  background: rgba(255,255,255,0.2);
  color: #FFFFFF;
}
.channel-item.unread {
  color: #FFFFFF;
  font-weight: 700;
}

Badge non lu

.badge {
  background: #E01E5A;
  color: #FFFFFF;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 700;
  padding: 1px 6px;
  min-width: 18px;
}

Pièces jointes de message / Cartes

.attachment {
  border-left: 4px solid #DDDDDD;
  background: #F8F8F8;
  border-radius: 0 4px 4px 0;
  padding: 8px 12px;
  margin: 4px 0;
}

Réactions

.reaction {
  border: 1px solid #DDDDDD;
  border-radius: 24px;
  background: #F8F8F8;
  padding: 2px 8px;
  font-size: 13px;
  cursor: pointer;
}
.reaction:hover { background: #F1F1F1; }
.reaction.active {
  background: rgba(18,100,163,0.1);
  border-color: #1264A3;
}

5. Principes de mise en page

Mise en page à trois colonnes

┌──────────────┬──────────────────────────────┬─────────────┐
│   Sidebar    │        Message Area          │   Thread    │
│   (240px)    │          (flex: 1)           │  (400px)    │
│  #4A154B     │          #FFFFFF             │  optional   │
└──────────────┴──────────────────────────────┴─────────────┘

Système d'espacement (base 4px)

Jeton Valeur Usage
--space-1 4px Espaces serrés
--space-2 8px Rembourrage de composant
--space-3 12px Rembourrage des champs de saisie
--space-4 16px Rembourrage standard
--space-6 24px Rembourrage de carte
--space-8 32px Espaces entre sections

Structure de la barre latérale

[Workspace Name ▼]
────────────────────
Threads
All DMs
Drafts & Sent
────────────────────
▼ Channels
  # general
  # random
  # design  ● (unread)
────────────────────
▼ Direct Messages
  John Doe
  Jane Smith

Compositeur de message

  • Épinglé en bas de la zone de message
  • border: 1px solid #DDDDDD, border-radius: 8px, margin: 0 16px 16px
  • Barre d'outils : émoji, pièce jointe, format, bouton d'envoi

6. Profondeur et élévation

Slack utilise des ombres légères sur une surface claire :

Niveau Usage Ombre
Plat Rangées de messages, éléments de la barre latérale none
Bas Cartes, champs de saisie 0 1px 3px rgba(0,0,0,0.08)
Moyen Menus déroulants, popovers 0 4px 12px rgba(0,0,0,0.12)
Élevé Modales, dialogues 0 8px 24px rgba(0,0,0,0.15)
Superposition Arrière-plans de modales rgba(0,0,0,0.5)

7. À faire et à ne pas faire

✅ À faire

  • Utiliser l'aubergine #4A154B pour la barre latérale — c'est l'élément d'interface le plus iconique de Slack
  • Garder la zone de contenu principale blanche et claire
  • Utiliser #1D1C1D (quasi-noir) pour tout le texte du corps, pas le noir pur
  • Mettre les noms de canaux en gras pour indiquer le statut non lu — la graisse est l'indicateur
  • Utiliser les quatre couleurs d'accent uniquement pour les rôles sémantiques (succès, avertissement, danger, info)
  • Appliquer border-left: 4px sur les pièces jointes et les intégrations de messages
  • Afficher les horodatages au survol uniquement
  • Utiliser #1264A3 pour les liens et les états de focus
  • Garder les éléments de la barre latérale compacts : hauteur 28px, border-radius 6px

❌ À ne pas faire

  • Ne pas utiliser une zone de contenu principale sombre — Slack est prioritairement clair
  • Ne pas disperser bleu/vert/jaune/rouge comme accents décoratifs
  • Ne pas utiliser le noir pur #000000 pour le texte
  • Ne pas utiliser des bulles de dialogue — les messages sont des rangées plates
  • Ne pas créer des boutons à grand rayon — 4px est la norme
  • Ne pas afficher les horodatages en permanence
  • Ne pas utiliser les MAJUSCULES pour les noms de canaux
  • Ne pas utiliser des tailles de police inférieures à 12px

8. Comportement responsive

Points de rupture

Point de rupture Largeur Mise en page
Mobile < 768px Panneau unique, barre latérale en tiroir gauche
Tablette 768–1024px Barre latérale + zone de messages uniquement
Bureau > 1024px Mise en page complète à trois colonnes

Adaptations mobiles

  • Barre latérale : tiroir gauche, glisser à droite pour ouvrir
  • Barre d'onglets du bas : Accueil, MDs, Activité, Vous
  • Panneau de fil : superposition plein écran
  • Compositeur : épinglé au-dessus du clavier
  • Éléments de la liste de canaux : hauteur de cible tactile 44px
  • Barre d'en-tête aubergine conservée sur mobile

9. Guide de prompt pour agent

Lors de la génération de designs dans le style Slack, suivez cette approche :

Application des couleurs :

Définissez background: #FFFFFF comme canevas principal. Utilisez #4A154B (aubergine) pour la barre latérale. Tout le texte principal est #1D1C1D. Les liens et les anneaux de focus utilisent #1264A3. Les quatre couleurs du logo — #36C5F0, #2EB67D, #ECB22E, #E01E5A — sont uniquement sémantiques : info, succès, avertissement, danger.

Typographie :

Utilisez system-ui, -apple-system, sans-serif pour toute l'interface. La taille de base est 15px. Canaux non lus : graisse 700. Texte du corps : graisse 400. Horodatages : 12px #616061, survol uniquement. Code : Monaco, Menlo, monospace, 12px, arrière-plan #F8F8F8.

Mise en page :

Trois colonnes : barre latérale aubergine de 240px + zone de messages blanche flexible + panneau de fil optionnel de 400px. Éléments de la barre latérale : hauteur 28px, rayon 6px, gras si non lu. Compositeur : épinglé en bas, border: 1px solid #DDDDDD, border-radius: 8px.

Composants :

Boutons : rayon 4px, hauteur 36px, primaire aubergine. Champs de saisie : bordure 1px solid #DDDDDD, anneau de focus #1264A3. Rangées de messages : plates, sans bulles, avatar circulaire de 36px. Réactions : pilule border: 1px solid #DDDDDD, border-radius: 24px.

Ton :

Slack est chaleureux, professionnel et humain. Les états vides utilisent des illustrations amicales. Les appels à l'action sont directs : « Envoyer un message », « Commencer ». Les messages d'erreur sont clairs et utiles. Jamais alarmant.

Antipatterns à éviter :

Pas de zone de contenu sombre. Pas de bulles de dialogue. Pas de texte noir pur. Pas d'accents multi-couleurs dispersés. Pas de noms de canaux en MAJUSCULES. Pas de police inférieure à 12px. Pas de grand rayon de bouton.