Communitygithub.com

網頁設計

設計並建構看起來像特定產品而非模板的網頁介面,包含動畫和轉場效果。適用於新頁面、重新設計、登陸頁面、品牌更新、元件工作,或任何涉及層級、排版、色彩、佈局、動態或響應式行為的UI變更。會維護一份DESIGN.md,讓設計方向能在不同工作階段之間延續。

網頁設計 是什麼?

這項技能旨在解決AI生成UI常見的缺陷,例如使用相同的字型、紫羅蘭漸層、卡片內嵌卡片、置中英雄區塊搭配三個圖示方塊等。它強制設計師在生成任何UI程式碼之前,先做出明確的設計決策,並透過視覺檢查來驗證結果。支援的平台包括任何使用CSS/Tailwind的網頁專案,並透過設計脈絡文件(DESIGN.md)來維持設計方向的一致性。其運作流程包含:載入或建立設計脈絡、決定設計模式(說服、操作、閱讀、體驗)、在產品既有系統中建構、進行截圖檢查,並最終報告檢查結果。這項技能也特別強調避免使用假內容、假社交證明,以及確保行動裝置的佈局是獨立設計的。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ADWilkinson/astack/tree/main/skills/web-design

在你喜歡的 AI 中提問

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

說明文件

網頁設計 是做什麼的?

AI生成的UI總是以可預測的方式失敗:相同的字型、相同的紫羅蘭漸層、卡片內的卡片、置中的英雄區塊搭配三個圖示方塊、用裝飾取代觀點。這項技能用決策取代預設值,然後檢查渲染結果。

下方的 <skill-dir> 指的是此技能本身的資料夾。請從專案根目錄執行其腳本,這樣輸出才會落在專案中,而不是安裝的技能資料夾內。

1. 載入或建立設計脈絡

尋找 DESIGN.md(也可以是 docs/DESIGN.md、BRAND.md)。如果存在,請在觸碰UI之前先閱讀它;其標記和規則優先於你的個人品味。如果它不存在且工作量超過一個小修正,請透過閱讀程式碼來從模板建立一個:從CSS/Tailwind設定檔中取得真實的標記、真實的字型、真實的元件。將任何你推斷的內容標記為「推斷」。

當一個工作階段做出持久性的決策(例如一個新的標記、一個被拒絕的方向及其原因)時,請更新 DESIGN.md。這樣下一次工作階段才能避免回歸到預設值。

2. 決定方向

首先命名模式。 它設定了表面能獲得多大的大膽程度:

  • 說服(登陸頁、定價頁、發布頁):設計就是產品;堅持一個觀點。
  • 操作(應用程式UI、儀表板、設定、表單):精準且克制;熟悉的模式必須證明其存在價值;品牌精神存在於細節中。
  • 閱讀(文件、文章、更新日誌):為理解而結構化,然後讓閱讀變得愉快。
  • 體驗(作品集、展示、遊戲):作品領銜;介面退居幕後。

是優化還是重新設計? 優化會保留現有的品牌識別、文案和行為,並在其內部進行改善。重新設計則保留產品的事實和功能,但完全替換其外觀。切勿透過打磨一個你打算拋棄的外觀來腳踏兩條船。

然後在撰寫程式碼之前,分兩個階段進行規劃。

第一階段,規劃:

  • 任務:誰在這裡、他們首先需要什麼、下一步行動。
  • 調色盤:四到六個具名色碼,以及允許使用強調色的位置。
  • 字型:字體及其角色、字級、數字。
  • 佈局:一句話描述和粗略的ASCII線框;明確說明對齊方式。
  • 一個大膽的元素:唯一令人難忘的元素。周圍的一切都保持低調。

第二階段,通用性測試:你是否會針對任何類似的簡報提出這個計劃?將其對照目前的AI預設外觀(這些會隨時間變化)進行檢查。奶油色背景搭配襯線顯示字型和陶土色強調色、接近黑色搭配一種酸蝕強調色、以及大報紙般的細線,是今日的常見組合,正如去年的紫羅蘭漸層。如果計劃中的某個部分與簡報未曾要求的預設外觀相符,請替換它,並記下你更改了什麼以及原因。簡報本身的文字永遠是最終決定權,即使它要求的是上述其中一種外觀。

從主題的世界中選擇:其材料、地點、人工製品和詞彙。一個遛狗者的網站和一個分析師的儀表板不應該能夠互換調色盤。

當使用者提供參考資料時,請正確研究它們:參考資料研究會從實際網站中提取計算後的樣式,因此你借鑒的是關係(比例、節奏、密度),而不是表面裝飾。

3. 在產品的系統中建構

  • 使用現有的標記、基本元件和元件。在添加一次性數值之前,先添加一個標記。
  • 僅使用真實內容:真實姓名、長名稱、真實數字、空資料。永遠不要使用假字或發明的指標來填滿佈局。
  • 與畫面一起設計狀態:載入、空白、錯誤、成功、禁用、溢出。看起來壞掉的空白狀態是一個錯誤。
  • 隱藏無話可說的內容。零行、零餘額和空白圖表會變成誠實的空白狀態或消失;不要顯示一堆零。
  • 標題就是標籤。重新解釋標題的副標題應被刪除。
  • 行動裝置有其自己的佈局:按優先級重新排序,在桌面使用格線的地方使用水平快照導軌,使用 dvh/svh 而非 100vh,輸入框至少為16像素,點擊目標至少44像素。

在建構過程中,就要堅守工藝底線,而不是在最後一關才做。對於任何動畫或轉場,請先閱讀動態:一次編排好的時刻、一個小的時序系統、可中斷安全、處理減少動畫偏好,並像觀看影片膠片一樣觀看它。

4. 查看它

node <skill-dir>/scripts/shoot.mjs http://localhost:3000/page --full          # 390 + 1440, light + dark
node <skill-dir>/scripts/shoot.mjs http://localhost:3000/page --widths 320,390,768,1440 --themes light
node <skill-dir>/scripts/shoot.mjs http://localhost:3000/page --click '[aria-controls=menu]' --widths 390

打開每張截圖並實際閱讀它。然後按以下順序進行檢查:

  1. 首次閱讀:瞇著眼看。最重要的事情是否最突出?你能在三秒內分辨出這是什麼以及該做什麼嗎?
  2. 破損:溢出、文字被裁剪、圖層重疊、孤立文字、焦點不可見、深色模式對比度。shoot.mjs 會標記其中幾項;檢查其輸出。
  3. 層級和節奏:標題上方間距大於下方間距;群組內間距一致,群組間間距更大;每個視圖只有一個主要操作。
  4. 通用性:執行 deslop 的掃描或檢查反模式。陌生人能否從移除標誌的截圖中猜出這個產品?
  5. 工藝:在2倍縮放下像素級對齊、圖示和文字的光學平衡、表格中數字使用等寬數字。

修正最嚴重的問題,重新截圖,重複。對於新作品來說,兩到三次完整的循環是正常的。

5. 完成

報告你檢查的畫面、狀態(寬度、主題)、你做出的決定,以及任何未檢查的項目(你無法訪問的已認證狀態、你沒有的真實資料)。將 DESIGN.md 的變更與UI一同提交。

規則

  • 使用者的簡報和 DESIGN.md 優先於此技能。如果品牌就是紫羅蘭漸層,那就是紫羅蘭漸層。
  • 不要為了局部變更而新增UI函式庫、圖示集或字型。
  • 不要編造社交證明、推薦、標誌、使用者數量或「備受信賴」。
  • 不要偽造即時性:除非有真實資料以該頻率支持,否則不要有脈動的「直播」點、跑馬燈或活動(例如,當實際情況為「每10秒更新一次」時才這麼做)。
  • 絕不要將不同的狀態(已提交、已接受、已確認)合併為一個成功勾號。

相關技能