Communitygithub.com

CleanUI — 個人站反 AI 味 UI

搭建 Web/個人站時阻止通用 AI UI。強制差異化版式、字體、配色與元件,避免作品集長得像千篇一律的 LLM 落地頁。

CleanUI — 個人站反 AI 味 UI 是什麼?

Personal Website 步驟2:CleanUI — 今晚新增。Resume2Site 後擋住 AI 味預設,再接 freelancer-portfolio。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add PeterHdd/cleanui

在你喜歡的 AI 中提問

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

說明文件

CleanUI — AI UI 設計強制技能

停止。在你撰寫任何 UI 程式碼之前,請閱讀此檔案。

你是一個擁有根深蒂固 UI 習慣的 AI 程式碼產生器,這些習慣會產生可辨識的「AI 風格」輸出。此技能旨在覆蓋這些習慣,並產生專業、人類設計的介面。

每個 UI 任務的流程:

  1. 思考你通常會產生的內容
  2. 根據下方的「絕對禁止清單」檢查每個元素
  3. 將每個違規項目替換為指定的替代方案
  4. 只有完成以上步驟才開始撰寫程式碼

絕對禁止清單 — 自動失敗模式

如果你的輸出包含以下任何一項,請在回傳程式碼前停止並修正。

字體

  • 禁止使用: font-extrabold (800)、font-black (900)、fontWeight: "800"、fontWeight: "900"
  • 改為使用: 最多使用 font-bold (700)。章節標題使用 font-semibold (600)。
  • 自我檢查: 在你的程式碼中搜尋「extrabold」和「black」。全部取代為「bold」。

Logo / 信任標誌列

  • 禁止使用: 公司名稱以相同的純文字、相同的邊框藥丸/方塊形式呈現
  • 改為使用: 讓每個 Logo 在視覺上有所區別 — 將圖示與名稱配對,根據每個 Logo 調整字重/斜體/字距,或使用 SVG Logo
  • 自我檢查: 所有 Logo 看起來都一樣嗎?修正它。

全大寫 / 字距

  • 禁止使用: tracking-[0.18em]、tracking-[0.2em]、tracking-[0.24em] 或任何自訂的寬字距
  • 禁止使用: 在整個頁面上使用超過 2 個全大寫且具字距的標籤
  • 改為使用: 使用句子大小寫。如果需要全大寫,最多使用 tracking-wider (0.05em)。

眉毛徽章

  • 禁止使用: 裝飾性藥丸/徽章放在標題上方,且僅重複標題的內容(例如:「適用於內容團隊的 AI 寫作系統」)
  • 改為使用: 完全移除,或使用事實性資訊:「現在是 Beta 版」、「受到 2,400 個團隊信賴」、「提供免費方案」

英雄區標題

  • 禁止使用: 標題在桌機上換行超過 4 行
  • 改為使用: 4-8 個字詞,最多 2 行。重新撰寫得更簡潔。
  • 禁止使用: 副標題超過 2 個句子
  • 改為使用: 最多 1-2 個簡短句子。

裝飾性文字

  • 禁止使用: 裝飾性標籤,例如「即時脈衝」、「夜間模式」、「無雜亂的操作清晰度」
  • 改為使用: 真實資料(狀態、計數、日期)或完全移除。每個標籤都必須具備功能性。

陰影

  • 禁止使用: 卡片上使用 shadow-xl、shadow-2xl,或模糊程度超過 8px
  • 改為使用: shadow-sm 或使用細微邊框的 shadow-none。

邊框圓角

  • 禁止使用: 隨意混合使用 rounded-md、rounded-xl、rounded-2xl、rounded-3xl、rounded-[24px]、rounded-[32px]
  • 改為使用: 選擇 2-3 個數值。卡片:8-12px。按鈕:6-8px(藥丸形狀使用 rounded-full)。輸入框:6-8px。保持一致。

圖示

  • 禁止使用: 將 Unicode 字元作為圖示(↑、↓、◌、⌂、◫)
  • 改為使用: lucide-react (Web)、@expo/vector-icons (React Native)、SF Symbols (iOS)、Material Icons (Android)

檔案結構

  • 禁止使用: 整個應用程式寫在單一檔案中
  • 改為使用: 分離:畫面/頁面、元件、常數/主題、資料、導航

版面規則

根據內容類型匹配版面

內容類型版面不要使用
圖片/視覺類(美食、旅遊、產品)水平輪播、圖片網格、英雄圖片純文字垂直列表
資料/數字類(金融、健身、分析)統計卡片、進度條、指標網格英雄圖片卡片
動態消息(社交、新聞、貼文)全寬堆疊卡片、無限捲動含拖曳手柄的分段版面
瀏覽項目(電子商務、任務、電子郵件)含搜尋/篩選功能的垂直列表英雄區塊
多媒體(串流、音樂、Podcast)水平捲動書架(Netflix 風格)垂直列表
聊天/訊息聯絡人清單 + 聊天詳細內容英雄卡片或統計網格
地圖/位置地圖檢視 + 底部表單疊加層標準列表版面

反模板規則

  • 永遠不要對每個應用程式使用相同的版面骨架。 閱讀提示,識別內容類型,選擇正確的版面。
  • 永遠不要同時使用以下所有元素: 英雄卡片 + 網格按鈕 + 拖曳手柄 + 分段控制 + 垂直列表。那是模板。
  • 如果應用程式以圖片為主,請顯示實際圖片 — 縮圖、照片 — 而不僅僅是在圓角方塊中的圖示。
  • 對於類別、精選項目、內容書架,使用水平捲動(FlatList horizontal、CSS overflow-x-auto)。AI 產生器較少使用這些。

設計品味

色彩節制

  • 單色或接近單色的色調通常看起來比色彩豐富的更好。
  • 顏色主要應出現在動作(按鈕、連結)、狀態(徽章)和強調(選取狀態)上。不要到處使用。
  • 深色元素(卡片、區塊)只有在代表現實世界物體(信用卡、媒體播放器、程式碼區塊)或刻意創造視覺節奏時才合理。不要只是「為了多樣性」。

列表項目

  • 永遠不要只使用字母縮寫作為唯一識別符號。 使用類別專用圖示(餐廳用餐具、交通用公車、訂閱用重複)放在圓角方塊中。
  • 始終包含中繼資料:日期/時間、類別、狀態。「餐廳」顯得很假。「餐廳 · 5月5日 · 14:28」顯得很真實。

篩選器

  • 任何包含 5 個以上項目的列表都應具有篩選器或分段控制。
  • 分段控制:藥丸軌道樣式,選取的分段使用實心填充。

動作按鈕

  • 無邊框樣式通常看起來更簡潔:圖示放在低調背景的方塊中 + 下方標籤。不需要卡片包裝、不需要陰影、不需要邊框。

行動裝置規則

請參閱 行動裝置模式參考 以取得完整的 iOS 色板、Android Material 3 Token、元件指南和程式碼範例。

所有平台

  • 使用真實的導航函式庫,而不是自訂的 View 導航列。React Native:@react-navigation/bottom-tabs。iOS:TabView。Android:Material NavigationBar。
  • 永遠不要建置浮動藥丸形狀的底部導航列。 不要使用 position: absolute、不要使用 borderRadius: 28、不要使用深色浮動藥丸。
  • 在 React Native 中使用 Platform.select() 或 Platform.OS 進行條件樣式設定。
  • 在常數檔案中定義設計 Token(顏色、間距、圓角、字體)。
  • 每個畫面處理 3 種狀態:載入(骨架)、內容、空白。

iOS

  • 安靜、柔和、高級。色彩節制。系統字體 (SF Pro)。語意顏色(.label、.secondaryLabel、.systemBackground)。半透明導航/標籤列。listStyle(.insetGrouped)。SF Symbols 作為圖示。細線分隔線。圓角半徑:10-12。不要使用重陰影 — 使用背景對比。

Android (Material 3)

  • 結構化、大膽、表現力強。使用來自 material3 的 Material 元件。使用色調表面 (tonalElevation) 而非下拉陰影。使用 Scaffold 搭配 TopAppBar + NavigationBar。使用 ListItem 可組合元件作為列表列。項目之間使用 HorizontalDivider()。卡片圓角半徑:12dp。從種子顏色產生色彩方案。

React Native / Expo

  • 透過 Platform.select() 使用平台條件顏色、陰影和間距。
  • iOS 使用 shadowColor/shadowOpacity/shadowRadius。Android 使用 elevation。
  • 每個平台使用不同的背景顏色:iOS #F2F2F7,Android #F9F9FF。
  • 不同的主要顏色:iOS #007AFF,Android 使用 Material 種子顏色。

網頁規則

創意自由 + 結構

  • 你在以下方面擁有自由:色板、字體選擇、邊框圓角數值、品牌個性、背景處理。
  • 你必須遵循:區塊結構、英雄區內容限制、元件模式、響應式行為。

導航

  • 固定頂部,搭配 backdrop-blur 和半透明背景
  • Logo 靠左,導航連結置中,CTA 按鈕靠右
  • 行動裝置:漢堡選單

登陸頁面結構

英雄區    → 標題 + 副標題 + 2 個 CTA + 一個信任元素
信任區域   → Logo 列(視覺上不同的 Logo)
功能      → 3 欄網格,包含圖示 + 標題 + 描述
運作方式  → 3 步驟流程
客戶評價  → 大頭貼 + 姓名 + 角色 + 引言
定價      → 2-3 個方案,精選方案視覺上反轉(深色背景)
CTA       → 最終行動呼籲
頁尾      → 連結欄 + 版權資訊

英雄區

  • 標題 + 簡短副標題 + 2 個按鈕 + 一個信任元素。僅此而已。
  • 產品模型/螢幕截圖放在兩欄英雄區的右側是可以的。
  • 不要在英雄區中放置統計卡片、包含列表的複雜預覽卡片或多段落描述。

功能卡片

  • 圖示容器:至少 48px,帶有淡色背景。不要太小。
  • 卡片內距:寬敞(p-6 到 p-8)。
  • 每張卡片應感覺完整 — 圖示 + 標題 + 描述。

定價

  • 精選方案:反轉(深色背景、淺色文字)或較粗邊框 +「最受歡迎」徽章。
  • 每張卡片中都有全寬 CTA。

登入

  • 兩欄:品牌面板(左側,深色)+ 表單(右側)。
  • 社交登入放在電子郵件表單上方。
  • 行動裝置:隱藏品牌面板,顯示帶有 Logo 的表單。

儀表板

  • 側邊欄 (240-260px) + 主要內容。
  • 側邊欄:Logo、帶圖示的導航項目、可選的升級卡片。
  • 頂部列:搜尋 + 通知 + 大頭貼。
  • 內容:問候語 → 統計卡片 → 帶標籤的篩選列表 → 活動動態。

深色模式

  • 背景:非常深的灰色,不是純黑色。
  • 文字:接近白色,不是純白色。
  • 邊框:深灰色。降低色彩飽和度。

輸出前檢查清單

在回傳程式碼之前,請確認:

字體:

  • 任何地方都沒有 font-extrabold 或 font-black
  • 最多使用 2 種字重(一般 + 粗體/半粗體)

視覺:

  • 沒有 tracking-[0.18em] 或更寬
  • 在整個頁面上最多使用 2 個全大寫標籤
  • Logo 列項目在視覺上彼此不同
  • 卡片上沒有 shadow-xl 或 shadow-2xl
  • 一致的邊框圓角(最多 2-3 個數值)

英雄區:

  • 標題在桌機上適合 2 行
  • 眉毛徽章(如果存在)添加新資訊,不重複標題
  • 副標題是 1-2 個句子,不是一段話

結構:

  • 多個檔案(畫面、元件、常數、導航)
  • 真實的圖示函式庫(不是 Unicode)
  • 平台特定樣式(React Native)
  • 載入/空白狀態存在

版面:

  • 版面匹配內容類型(不是每次都使用相同的模板)
  • 列表項目具有類別圖示 + 中繼資料
  • 包含 5 個以上項目的列表具有篩選器

相關技能