Communitygithub.com

hiragiyayoi/muji-design

一種基於無印良品(無印良品)哲學的日本設計語言,用於生成 UI,以「最佳化」為核心,融合和室的空間語法,並以 46 色參考調色板為基礎。適用於建置或重新設計網頁或應用程式 UI,使其呈現安靜、溫暖、低飽和度且簡潔的風格,例如設定畫面、儀表板、內容頁面、表單和產品 UI。

muji-design 是什麼?

此技能「muji-design」是一種專門的 AI 輔助設計語言,旨在將無印良品(MUJI)的設計哲學應用於 UI 生成與重構。其核心概念為「最佳化」,透過簡化包裝、減少工程步驟與精選素材來達成。此技能支援多種平台與框架,包括網頁與應用程式 UI 的建置,特別適用於需要營造安靜、溫暖、低飽和度且整潔氛圍的介面,例如設定頁面、儀表板、內容頁面與表單。其運作方式基於一套完整的設計系統,包含預先定義的數值(如 46 色調色板、間距單位、字體與動畫參數)與非數值的判斷原則(如「間」與「靜寂感」),並提供自我檢查清單,確保最終產出符合無印良品的美學。開發者可直接參考提供的 CSS 變數檔案與色彩範例來實作。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/hiragiyayoi/muji-design/tree/HEAD

在你喜歡的 AI 中提問

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

說明文件

muji-design 是做什麼的?

用於生成或修改 UI 的設計技能。將日本設計的基礎置於無印良品的理念之上,並以「最佳化」為核心。空間文法取自和室建築,色彩則以 46 色調色板為基礎。

核心 ― 最佳化

將無印良品的三個觀點翻譯並應用於 UI 的營造。

  • 素材的選擇 ― 直接使用色彩與質感來自素材本身的元素。如生成り色、無垢木材、榻榻米、石頭、青苔、櫻花。顏色從此調色板的範圍中選取。
  • 流程的重新檢視 ― 刪除操作步驟與畫面轉換中的浪費。目標操作應置於少數步驟即可到達的位置。
  • 包裝的簡化 ― 減少框架、徽章、裝飾等「包裝」,直接展示內容。

判斷軸線只有一條:「這個畫面,放在無印良品的貨架與畫面上是否感覺不協調」。當感到困惑時,就用這個問題來決定。

進行方式

  1. 決定主角 ― 每個畫面只有一個主角(類似壁龕)。其他所有元素都扮演輔助角色。
  2. 確保留白 ― 首先確保不放任何東西的區域。留白不是剩下的東西,而是首先放置的元素。
  3. 繪製骨架 ― 使用木條與格柵進行分隔。分隔線、列表行、導航的垂直線要細,顏色取自木材色系。
  4. 放置面 ― 用門檻與階梯來表示區塊。僅透過改變一層面的顏色來進行區分,避免依賴強烈的框線與陰影。
  5. 放置一個點綴色 ― 如同插花,點綴色與設計元素在一個畫面中僅限一處,並偏離中心放置。
  6. 自我檢查 ― 通過以下檢查,進行一次減少元素的修正後再提交。

第 1 層 ― 數值(固定值)

顏色

調色板是基礎。在實際畫面中,根據角色使用這些值,並根據專案進行微調。調整時的目標是:保持低飽和度,停留在溫暖的中性色範圍內,並保持明暗階梯與角色。

分配給角色(預設)

角色顏色HEX
背景生成り色#FBFAF5
面(卡片・面板)障子の白#F5F5F4
面(降低一層)擴散光#E5DCD7
區塊的階梯淡い畳影#D5C0B0
本文文字梁の濃茶#2E1E12
輔助文字利休鼠#888E7E
分隔線・木條桟#9F7153
木材元素木肌#B3987E
強面・標題帶梁の中茶#745E4A

全部 46 色調色板

  • 從參考影像量測:障子の白 #F5F5F4 / 擴散光 #E5DCD7 / 淡い畳影 #D5C0B0 / 畳 #BEB09A / 木肌 #B3987E / 桟 #9F7153 / 梁の中茶 #745E4A / 梁の濃茶 #2E1E12
  • Tatami Morning Light:#F7F3EA / #E0D2B5 / #C1A879 / #8E6B3F / #5A4A38
  • Japanese Minimalism:白練 #F5F0E8 / 藁色 #E8DFC8 / 生成り #EDE0C4 / 抹茶 #7A8C5E / 墨染 #6B6B6B / 勝色 #1C1F2B
  • 和色:生成り色 #FBFAF5 / 練色 #EDE4CD / 白茶 #DDBB99 / 胡桃色 #A86F4C / 利休茶 #A59564 / 利休鼠 #888E7E
  • Misty Tatami:#F2EFE6 / #D9D1C1 / #B7B0A2 / #7C776E / #3F3C37
  • 植物:松葉色 #839B5C / 苔色 #6C8253 / 若竹色 #6B9362 / 鶯色 #928C36 / 松の影 #3D4F3C
  • 水・空・石・土:水淺蔥 #80ABA9 / 藍色 #165E83 / 砂礫 #E8E3D6 / 濕潤玄武岩 #35393B / 土色 #BC763C
  • 櫻花:桜色 #FEF4F4 / 薄桜 #FDEFF2 / 桜鼠 #E9DFE5 / 灰桜 #E8D3D1 / 撫子色 #EEBBCB / 紅梅色 #F2A0A1

顏色的用法

  • 畫面的主角是障子、榻榻米、木材的中性色。自然色(植物・水・櫻花)作為點綴色,一個畫面僅限一種顏色,面積控制在整體的 10% 以內。櫻花系是面積最受限制的顏色。
  • 顏色平面要平坦地塗抹。顏色之間的關係透過明暗階梯來建立,漸層僅用於需要表現光線的部分。
  • CSS 變數一組位於 references/design-tokens.css。

留白・尺寸

  • 留白的階梯:4 / 8 / 16 / 24 / 40 / 64 (px)。元素間的留白從此階梯中選取。
  • 畫面邊緣的留白要取得較寬。不要壓縮內容寬度,保持留白的比例。
  • 元素的高度要取得較低且整齊(低的水平線)。行高與控制項的高度在畫面內保持階梯的一致性。

線條・圓角・陰影

  • 分隔線為 1px,顏色使用桟 #9F7153 系的淡色。
  • 圓角最大 4px。圓潤度保持在素材角落的圓潤程度。
  • 陰影透過面與面之間的明暗差異來產生。如果需要投射陰影,要像擴散光一樣柔和、廣泛、淡薄。

字體

  • 標題使用明朝體('Hiragino Mincho ProN', 'Yu Mincho', 'Noto Serif JP', serif)。
  • 本文與操作使用哥德體('Hiragino Kaku Gothic ProN', 'Yu Gothic', 'Noto Sans JP', sans-serif)。
  • 字型大小階梯:12 / 13 / 15 / 17 / 22 / 28 (px)。粗體僅用於標題與主角元素。標題的字距稍微放寬,本文保持標準。

動畫

  • 畫面轉換是拉門的動作。以橫向滑動的安靜滑動為基礎,持續時間為 200–300ms,緩動使用平滑減速(cubic-bezier(0.22, 1, 0.36, 1))。
  • 動畫僅附加在傳達狀態變化的位置。

第 2 層 ― 判斷(無法以數值衡量的部分)

數值是基礎。完成度由以下判斷決定。

  • 留白 ― 檢查不放任何東西的地方是否具有意義。在增加元素之前,先確認留白是否被破壞。
  • 靜寂感 ― 檢查整個畫面是否安靜。顏色、線條、動畫的數量越多,靜寂感就越會喪失。
  • 素材感與光線 ― 不只重現顏色代碼,還包括榻榻米與木材的溫暖感、柔和迴繞的光線感,統稱為素材感。透過面的顏色選擇與明暗差異來表現。
  • 減法 ― 與其決定放置什麼,不如決定不放置什麼,這決定了完成度。對於猶豫不決的元素,選擇不放置。

良好狀態與崩壞狀態的對比

觀點良好狀態崩壞狀態
主角一眼就能看出主角所有元素以相同強度並排
留白留白中有呼吸感元素擠到邊緣
顏色中性色主導,一個點綴色發光多個點綴色相互競爭
分隔透過面的階差安靜地分隔框線與陰影重重疊疊,顯得吵雜
視線從上到下毫不猶豫地流動視線有多個去處

自我檢查(提交前務必通過)

  1. 主角是否確定為一個?
  2. 是否有壓迫感?元素是否擠到邊緣?
  3. 視線是否不猶豫?是否確定了第一個觀看的位置與流動的方向?
  4. 畫面是否安靜?計算顏色、線條、動畫的數量,如果過多則減少。
  5. 點綴色是否為一種顏色、一個位置、面積在 10% 以內?
  6. 是否符合判斷軸線(放在無印良品的貨架與畫面上是否感覺不協調)?

在檢查中發現的問題,應以減少而非增加元素的方向進行修正,執行一次修正後再提交。

參考

  • references/design-tokens.css ― 角色色、留白、字體、動畫的 CSS 變數
  • assets/japanese-color-palette.png ― 46 色調色板樣本
  • assets/cover-mincho.png ― 樣式象徵圖像(障子、榻榻米、矮桌、一朵插花)

相關技能