Communitygithub.com

Clerkcode02/sos-design-system

SOS 社群應用程式登陸頁面的視覺設計系統 — 包含顏色代碼、字體比例、間距、表面、按鈕與藝術方向。在建立或重新設計任何區段、元件或視覺元素時使用。

sos-design-system 是什麼?

這個 AI Agent 技能為 SOS 社群應用程式的登陸頁面提供了一套完整的視覺設計系統。它明確定義了藝術方向、顏色代碼、字體比例、佈局與間距規則、表面節奏以及元件規範。主要目的是幫助開發人員快速且一致地建立或重新設計頁面的任何部分,確保視覺效果符合「高級、平靜、公民參與、以人為本」的設計哲學。此技能特別適合與 Claude Code 或 Cursor 等開發工具搭配使用,透過讀取 SKILL.md 文件中的詳細規範來指導程式碼生成。它明確禁止使用原始十六進位顏色代碼,要求開發者僅使用定義好的 CSS 自訂屬性(如 `bg-ink`、`text-paper`),並對紅色使用比例、漸層數量與動畫效果都有嚴格限制,以維持簡潔專業的視覺風格。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Clerkcode02/S0S-LANDING-PAGE/tree/main/.claude/skills/sos-design-system

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

SOS 設計系統

藝術方向

高級、平靜、公民參與、以人為本。想像編輯雜誌遇上緊急應變中心 — 自信但不驚慌。

可以: 超大字級編輯標題、大量留白、強烈的左對齊網格搭配刻意不對稱、偶爾使用滿版出血區塊、微妙的電影打光(每個深色區段最多一個柔和徑向漸層)、僅在疊加層上使用克制的玻璃效果、緊急紅色僅作為精確點綴。

不可以: 霓虹發光、飽和紅色背景、表情符號圖形、到處都是通用儀表板卡片、帶有沉重陰影的浮動卡片、持續旋轉的物件、多個相互競爭的漸層、粒子背景。

經驗法則:如果紅色覆蓋超過視口約 5%,就太多了。

顏色代碼

在 src/app/globals.css 中的 Tailwind v4 @theme 下定義一次。元件只使用代碼工具(bg-ink、text-paper、text-accent),絕不使用原始十六進位。

代碼值用途
--color-ink#101318主要深色背景
--color-ink-raised#1B2027深色表面、手機邊框、深色背景上的卡片
--color-ink-line#2A313B深色背景上的分隔線
--color-paper#F5F6F7淺色區段背景
--color-paper-line#E1E4E8淺色背景上的分隔線
--color-accent#D93642強調色:行動呼籲按鈕、關鍵標記、狀態指示點
--color-accent-strong#B8232F淺色背景上的強調文字(在 #F5F6F7 上符合 AA 標準)
--color-accent-soft#F6E8EA淺色背景上的色調背景、徽章
--color-text-dark#171A20淺色背景上的內文
--color-text-light#F7F8FA深色背景上的內文
--color-muted-dark#9AA2AD深色背景上的低調文字(在 #101318 上 ≥ 4.5:1)
--color-muted-light#5E6672淺色背景上的低調文字(在 #F5F6F7 上 ≥ 4.5:1)

對比注意事項:

  • #858D98(提供的低調色)僅在深色背景上適用於大字型;內文請使用 --color-muted-dark。
  • #D93642 按鈕上的白色文字約為 4.6:1 — 適用於 ≥ 16px 半粗體的按鈕標籤。更改後請務必驗證。
  • 淺色背景上的紅色文字必須使用 --color-accent-strong。
  • 切勿僅用顏色傳達狀態 — 請搭配標籤或圖示。

狀態顏色(僅限追蹤區段):待處理 = 琥珀色 #C98A1B + 時鐘圖示,進行中 = 強調色紅色 + 無脈衝點,已清除 = 綠色 #2F8F5B + 勾選圖示。務必有標籤。

字體排印

  • 字型:一個可變無襯線字型,透過 next/font/google 引入(首選:Inter Tight 用於顯示 + Inter 用於內文,或僅用 Geist)。display: "swap",子集 latin,最多 2 個字型家族。
  • 標題:粗細 600–700,字距緊縮(-0.03em 到 -0.045em),行高 0.95–1.05。
  • 內文:粗細 400,行高 1.6,最大寬度約 65ch。
  • 眉列文字:12–13px,全大寫,tracking-[0.18em],粗細 500,低調顏色,通常前面有一條短紅色分隔線。

流體比例(在 @theme 中設定為 --text-*):

--text-display: clamp(3rem, 1.2rem + 7.5vw, 9rem);    /* 英雄區 h1 */
--text-h2:      clamp(2.25rem, 1.2rem + 4.2vw, 5.5rem);
--text-h3:      clamp(1.375rem, 1rem + 1.4vw, 2.25rem);
--text-lead:    clamp(1.125rem, 1rem + 0.6vw, 1.5rem);
--text-body:    1rem;  /* 在 ≥ md 時為 1.0625rem */
--text-small:   0.875rem;
--text-eyebrow: 0.8125rem;

在 320px 寬度下,英雄區標題必須不溢出 — 請特別測試「Every Second Matters.」這個句子。

佈局與間距

  • 容器:max-w-[1440px],側邊內距 clamp(1.25rem, 4vw, 4rem)。
  • 在 ≥ lg 螢幕上使用 12 欄網格;不對稱跨欄(例如 7/5、5/7、offset-1)。
  • 區段垂直節奏:上下 clamp(5rem, 10vw, 10rem)。
  • 間距比例:以 4px 為基礎(Tailwind 預設)。偏好使用 6、8、12、16、24、32 這些步長。
  • 圓角:小型控制項 6px,卡片 14px,手機外框約 2.6rem 外圓角。

表面與區段節奏

交替使用深色與淺色來營造章節感: 英雄區(深色)→ 關於(淺色)→ 運作方式(深色)→ 類別(淺色)→ 展示(深色,滿版出血)→ 註冊(淺色)→ 追蹤(深色)→ 協調(淺色)→ 常見問題(淺色)→ 最終行動呼籲(深色,電影打光)→ 頁尾(深色)。

打光:每個深色區段最多一個 radial-gradient,低不透明度(≤ 0.18),紅色或冷灰色調。靜態 — 永不動畫。

玻璃效果:bg-white/5 + backdrop-blur-md + 1px ink-line 邊框,僅用於導航列和小型疊加層。不使用大型模糊面板(效能考量)。

元件

  • 主要按鈕: 強調色背景、淺色文字、最小高度 48px、水平內距 20–28px、懸停時向右位移 2px 的細微箭頭圖示。
  • 次要按鈕: 透明、1px 邊框(深色背景上用 ink-line / 淺色背景上用 paper-line),相同尺寸。
  • 無商店/下載按鈕 — 此頁面沒有安裝行動呼籲按鈕,請參閱 CLAUDE.md「範圍:展示,非安裝漏斗」。
  • 眉列文字: 紅色 24px 分隔線 + 全大寫標籤。
  • 草稿徽章: 小型琥珀色輪廓藥丸形狀「草稿 — 待確認」;僅出現在包含草稿內容的區段。
  • 類別方塊: 圖示(24px lucide,筆劃 1.5)+ 標題 + 一行描述;極細邊框,無沉重陰影;懸停 = 邊框顏色變化 + 上移 2px。
  • 手機外框: 請參閱 app-screenshot-showcase 技能。

圖示

僅使用 lucide-react,筆劃 1.5,尺寸 20/24/32。每個概念一個圖示;圖示輔助文字,絕不取代文字。

完成視覺工作前的檢查清單

  • 僅使用代碼;元件中無原始十六進位
  • 紅色使用有所克制;狀態不僅靠顏色傳達
  • 標題層級一目了然;每個視口一個主導元素
  • 深色/淺色節奏保持完整
  • 任何新的顏色搭配都已檢查對比度
  • 在 320px 寬度下看起來是有意為之,而非簡單縮小

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

相關技能