
進化した Google の Stitch でデザイン生成から MCP・Skills 連携まで試してみた
こんにちは。オペレーション部のしいなです。
はじめに
先日、Google の AI デザインツール「Stitch」が大幅リニューアルされました。
AI ネイティブなキャンバスやデザインシステムを定義する DESIGN.md をはじめ、多くの新機能が追加されています。
さらに MCP サーバーやエージェントスキルも利用できます。
今回はリニューアルされた Stitch の新機能を試しながら、Web サイトとモバイルアプリのデザイン作成を行ってみました。
また、Claude Code を利用して、MCP サーバー経由で Stitch の操作や、Skills を活用したプロンプト改善・デザインシステムの自動生成も試してみました。
Stitch については下記ブログでも紹介されていますので、あわせてご参照ください。
主なアップデート内容
Stitch は UI の全面的なリニューアルをはじめ、デザインルールを記述する DESIGN.md や AI 連携機能など、多くの新機能が利用できるようになりました。
デザインの作成、反復、コラボレーションを支援する 5 つの主要なアップグレードが行われています。
- AI-Native Canvas: AI を前提に設計された新しいキャンバス
- Smarter Design Agent: より賢くなったデザインエージェント
- Voice: 音声による指示でのデザイン操作
- Instant Prototypes: ワンクリックでのプロトタイプ生成
- Design Systems and DESIGN.md: デザインシステムの定義と共有
DESIGN.md とは
デザインのビジュアル(カラー・フォント・スペーシング・コンポーネントスタイルなど)を Markdown で文書化したものです。
AI に UI を生成させると、画面ごとに統一感がなくバラツキが出ることがあります。
DESIGN.md を利用することで、カラーパレット・タイポグラフィ・コンポーネントパターンを統一でき、すべての画面を同じビジュアルルールで生成できるようになります。
DESIGN.md には主に以下のような項目を定義します。
| セクション | 内容 |
|---|---|
| Overview | デザインの方向性・コンセプト |
| Colors | カラーパレット、背景・テキスト・アクセントの役割定義 |
| Typography | フォントファミリー、サイズ・ウェイトの階層 |
| Elevation & Depth | シャドウやレイヤーの扱い方 |
| Components | ボタン・カード・入力欄などのスタイルルール |
| Do's and Don'ts | デザイン上の推奨事項と禁止事項 |
DESIGN.md の例
# Design System: The Artisanal Digital Atelier
## 1. Overview & Creative North Star
**The Creative North Star: "The Digital Curator"**
This design system moves beyond a standard e-commerce interface to create a high-end, editorial experience for *Boulangerie Miel*. We are not just building an ordering system; we are crafting a digital extension of a physical craft bakery. The aesthetic is rooted in Japanese "Soft Minimalism"—where every pixel serves a purpose, and "Ma" (negative space) is treated as a foundational element.
To break the "template" look, we utilize **Intentional Asymmetry**. Hero images of bread are not always centered; they may overlap container boundaries or bleed off-edge to suggest a tactile, magazine-like quality. Typography is used at high-contrast scales (Display-LG vs. Body-SM) to create a clear, authoritative hierarchy that feels curated rather than automated.
---
## 2. Colors
Our palette is inspired by the organic transition from raw flour to a perfectly baked crust.
### Palette Roles
* **Primary (#904905):** The "Terracotta" heart of the brand. Used for CTAs and moments of conversion.
* **Secondary (#705a47):** A muted, toasted brown for secondary actions and subtle branding elements.
* **Surface/Background (#fff8f0):** An inviting, warm off-white that prevents screen fatigue and evokes a premium paper feel.
* **On-Surface (#1e1b16):** Our "Dark Brown" for maximum legibility without the harshness of pure black.
### The "No-Line" Rule
**Explicit Instruction:** Do not use 1px solid borders to section content. Boundaries must be defined through background color shifts. For example, a `surface-container-low` (#faf3ea) card sits on a `surface` (#fff8f0) background. If a visual break is needed, use vertical white space (`spacing-8`) or a subtle tonal shift.
### Surface Hierarchy & Nesting
Treat the UI as a series of stacked fine papers. Use the `surface-container` tiers to create depth:
* **App Background:** `surface` (#fff8f0)
* **Navigation/Sidebar:** `surface-container-low` (#faf3ea)
* **Product Cards:** `surface-container-lowest` (#ffffff)
* **Floating Modals:** `surface-bright` with Glassmorphism.
### The "Glass & Gradient" Rule
To add "soul" to our flat aesthetic, apply a subtle linear gradient to Primary CTAs (transitioning from `primary` to `primary-container`). For floating navigation elements, use **Glassmorphism**: a semi-transparent `surface` color with a `backdrop-filter: blur(12px)`. This allows the warm photography to bleed through the edges, softening the layout.
---
## 3. Typography
The typography system balances the precision of Japanese Gothic styles with the warmth of an artisanal brand.
* **Display (Plus Jakarta Sans):** Used for large, editorial headlines. Bold and spacious.
* **Headline/Title (Plus Jakarta Sans):** Navigational anchors. High-weight, high-impact.
* **Body/Label (Manrope):** Chosen for its clean, geometric legibility at small sizes, ensuring the Japanese character sets (when applicable) feel balanced and modern.
**Hierarchy as Identity:** Use `display-lg` for product names in hero sections to create a sense of luxury. Use `label-sm` in all-caps for technical details (e.g., "WEIGHT: 400G") to provide a "spec-sheet" craft aesthetic.
---
## 4. Elevation & Depth
We reject traditional drop shadows in favor of **Tonal Layering**.
* **The Layering Principle:** Depth is achieved by "stacking" container tiers. Place a `surface-container-lowest` card on a `surface-container-low` background. This creates a soft, natural "lift" without the "dirty" look of grey shadows.
* **Ambient Shadows:** If a floating element (like a Cart Drawer) requires a shadow, it must be an **Ambient Shadow**: `0px 12px 32px rgba(59, 42, 26, 0.06)`. The tint is derived from our Dark Brown, not black, ensuring it feels like a natural shadow cast by warm bakery lighting.
* **The "Ghost Border":** If a border is required for accessibility, use the `outline-variant` (#dac2b4) at **15% opacity**. Never use 100% opaque borders.
---
## 5. Components
### Buttons
* **Primary:** Fill: `primary`, Text: `on-primary`. Roundedness: `xl` (1.5rem). Use a subtle gradient for depth.
* **Secondary:** Fill: `secondary-container`, Text: `on-secondary-container`. Flat, no shadow.
* **Tertiary:** No fill, `on-surface` text. Use for low-priority actions like "Cancel" or "View Details."
### Category Tags (Chips)
* **Unselected:** `tertiary-fixed` background, `on-tertiary-fixed` text.
* **Selected:** `on-background` (Dark Brown) background, `surface` text.
* **Shape:** `md` (0.75rem) for a modern, slightly squared-off craft look.
### Cards (Product Display)
* **Rule:** No dividers. Separate the image, title, and price using `spacing-3` and `spacing-1.5`.
* **Background:** `surface-container-lowest` (#FFFFFF).
* **Rounding:** `xl` (1.5rem).
* **Interaction:** On hover, apply a `surface-dim` tint or a very slight scale (1.02x) rather than a shadow.
### Input Fields
* **Style:** Minimalist. `surface-container-highest` background. No border.
* **Focus State:** A 2px "Ghost Border" using the `primary` color at 40% opacity.
### Navigation Sidebar
* **Background:** `surface-container-low` (#faf3ea).
* **Active State:** Use a vertical "accent bar" of 4px in `primary` on the left side of the active link, with no background change to the menu item itself.
---
## 6. Do's and Don'ts
### Do:
* **Do** use asymmetrical layouts where images overlap the "grid."
* **Do** prioritize white space over divider lines. If the content feels cluttered, increase the spacing scale instead of adding a line.
* **Do** use warm, "golden hour" photography. The UI is the frame; the bread is the art.
* **Do** use the `xl` (1.5rem) corner radius for large components to maintain the "soft" brand personality.
### Don't:
* **Don't** use pure black (#000000) for anything. Always use `on-surface` (#1e1b16).
* **Don't** use standard Material Design shadows. They are too "software-like" for a bakery.
* **Don't** use high-contrast borders. If you can see the border before the content, it's too dark.
* **Don't** center-align long blocks of text. Keep it editorial: left-aligned or carefully justified.
Stitch を試す
アクセス
Stitch は下記 URL からアクセスできます。
オプトアウト設定
デフォルトでは、生成したデザインが AI モデルのトレーニングに利用される設定になっています。
許可しない場合は、以下の手順でオプトアウトします。
-
画面右上のアイコンから Stitch の設定を開きます。

-
「AI モデルのトレーニングを許可する」のチェックを外します。
-
変更を保存します。

デザイン生成
以前、Pencil MCP サーバーを利用して Web ページのデザインを試したことがありました。
仕上がりが良かったので、今回も同じテーマで、ベーカリーショップのオンライン注文ページを Stitch でデザインしてみます。

プロンプト
街のベーカリショップのオンライン注文Webページをデザインして。
すべて日本語表記
【レイアウト】
左にメインコンテンツ(70%幅)、右にカートサイドバー(30%幅)の2カラム構成。
【ヘッダー】
- 左にパンのアイコン+店名「Boulangerie Miel」(セリフ体)
- 中央にナビリンク:メニュー/本日のおすすめ/店舗情報
選択中のリンクはテラコッタオレンジ
- 右に検索アイコンとアカウントアイコン
【本日の焼きたてパン セクション】
- セクション見出し「本日の焼きたてパン」太字ゴシック
- 補足テキスト「毎朝5時から丁寧に焼き上げています」小さめグレー
- 横スクロールカルーセル、写真カードが4枚並び右端が見切れる
- 右上に◀▶の丸型ナビボタン(テラコッタオレンジ)
- 各カード:角丸の写真(4:3比率)+白背景の下部に
パン名(左寄せ黒)と価格(左寄せオレンジ)
- カード例:クロワッサン¥280/バゲット¥350/メロンパン¥220
/あんぱん¥200
【カテゴリからえらぶ セクション】
- セクション見出し「カテゴリからえらぶ」
- ピル型チップスを横並び:すべて/食パン/菓子パン/惣菜パン
/ハード系/季節限定
- 選択中:焦げ茶(#3B2A1A)背景+白文字
- 非選択:ベージュ(#F0E6D8)背景+焦げ茶文字、枠線なし
- 3カラムの商品カードグリッド、2行で6商品表示
- 各カード構成:
・角丸の写真(カード幅いっぱい、横長)
・パン名(左寄せ太字)と価格(右寄せオレンジ)を同じ行
・説明テキスト1行(小さめグレー)
・「+ カートに追加」ボタン(テラコッタオレンジ塗り+白文字、
カード幅いっぱい、角丸)
- カード例:
山食パン¥380「北海道産小麦100%使用、もちもち食感」
カレーパン¥260「自家製カレーを包んでカリッと揚げました」
チョココロネ¥240「濃厚チョコクリームたっぷり」
塩バターロール¥180「発酵バター香る人気No.1ロール」
くるみパン¥320「たっぷりくるみの香ばしいパン」
明太フランス¥340「ピリ辛明太マヨのハードフランス」
- カードはフラット(シャドウなし)、背景白、角丸12-16px
【カートサイドバー(右固定)】
- 上部に「🛒 カート」見出し+オレンジ丸バッジで商品数「3」
- 商品リスト:
・小さな正方形サムネイル+商品名+価格(オレンジ)
・数量セレクター(− 数字 +)
・例:クロワッサン¥280 ×2 /バゲット¥350 ×1
- 受取時間セクション:
・「⏰ 受取時間」見出し
・日付タブ2つ:「本日 3/2」「明日 3/3」
選択中は焦げ茶背景+白文字、非選択は白背景+焦げ茶文字
・時間チップス横並び:10:00 / 11:00 / 12:00 / 13:00 /
14:00 / 15:00
選択中は焦げ茶塗り+白文字
- 金額内訳:
・小計 ¥910(右寄せ)
・消費税(8%) ¥72(右寄せ、小さめ)
・区切り線
・合計 ¥982(大きめ太字、オレンジ)
- 「🛒 注文を確定する」CTAボタン
テラコッタオレンジ塗り+白文字、角丸、サイドバー幅いっぱい
【デザイントーン】
- 背景:オフホワイト(#FDF6ED)
- テキスト:焦げ茶(#3B2A1A)
- アクセント+CTA:テラコッタオレンジ(#C87533)
- カード背景:白(#FFFFFF)
- サイドバー背景:ごく薄いグレー(#FAFAFA)
- フラットデザイン、シャドウは極薄かなし
- 角丸12-16px統一
- 写真は暖かいトーンでパンが美味しそうに見える
- クラフト感のある温かみと清潔感の両立
仕上がり
美味しそうな画像とともに生成されました。
プロンプトを元に忠実に再現してくれています。

アノテーション
デザインに対して、注釈や補足情報をアノテーションとして付与できます。
細かな調整をしたいときに便利です。
在庫切れ商品のボタンを「SOLD OUT」に変更する指示を付与してみます。
-
「Modify」から「アノテーション」を選択します。

-
変更したい箇所にアノテーション情報を追加します。

付与した情報をもとに AI がデザインを再生成します。
しばらくすると、アノテーションが反映された新しいバージョンのデザインが生成されました。

AI 編集
生成されたテキストや画像はさらに AI を利用して編集することができます。
ヒーローイメージをメロンパンに変更してみます。
-
「Modify」から「編集」を選択します。

-
変更したい画像を選択し、「AI で編集」をクリックします。

-
変更内容を指示します。

画像が変更され、デザインが再生成されました。

デザインシステム
カラーパレットやフォントなど、デザインテーマを変更することができます。
カラーテーマを Vibrant に変更してみます。
-
「Modify」から「デザインシステム」を選択します。

-
Color theme を Vibrant に変更し、 「Save & Apply」をクリックします。

カラーテーマの変更が適用され、デザインが再生成されました。

モバイルアプリ版
Web サイト用に作成したデザインを元に、簡単にモバイルアプリ版のデザインを生成することができます。
- 「Generate」から「モバイルアプリ版」を選択します。

しばらくすると、モバイルアプリに最適化されたデザインが生成されました。

プロトタイプ
スクロールやインタラクションが可能なプロトタイプを生成することができます。
デザインが実際にどのように機能するかを体感できるため、ホバースタイルやアニメーションなどのインタラクティブな動作の確認が簡単に行えます。
- 「Generate」から「Instant Prototype」を選択します。

しばらくするとプロトタイプ画面が生成されます。

パンの画像にカーソルを持っていくと少しズームされる演出を確認することができますね。
エクスポート
Stitch で作成したデータはエクスポートが可能です。
現時点では、以下の形式でエクスポートできます。
- AI Studio
- Figma
- Jules
- ZIP
- コードのクリップボードコピー
- MCP
- プロジェクト概要
- Instant Prototype

ZIP
ZIP 形式では、HTML ファイル、スクリーンショット(PNG)、DESIGN(Markdown)ファイルが含まれます。
├── stitch_boulangerie_miel_online_ordering.zip
│ ├── code.html
│ ├── DESIGN.md
│ └── screen.png
AI Studio
AI Studio にエクスポートすると、HTML ファイル、スクリーンショット(PNG)、DESIGN(Markdown)ファイルがプロンプトに指定された状態でビルドを行うことができます。
Tailwind CSS や JavaScript などで構成され、商品の追加やカテゴリの切り替えなど、実際に動作するコーディング済みのプレビュー画面を簡単に生成できます。

Stitch MCP を試す
MCP サーバーを通じて、Claude Code や Cursor、Antigravity などの AI ツールから Stitch を直接操作できます。
リモート MCP のため、利用にあたっては認証が必要です。
今回は Claude Code から MCP サーバーを利用してみます。
前提
- Claude Code CLI インストール済み
認証方法
API キーと OAuth を利用した認証を選択できます。
| API キー | OAuth | |
|---|---|---|
| 概要 | 設定ページで生成する永続キー | ブラウザベースのログイン認証 |
| 管理 | 手動でローテーションや削除が必要 | ログアウトで即時無効化 |
| 有効期間 | 失効するまで永続 | 期限付き・再認証あり |
API キーの作成
-
画面右上のアイコンから Stitch の設定を開きます。

-
API キーの項目で「キーを作成」をクリックします。

MCP の設定
今回は API キー認証で MCP サーバーを利用してみます。
claude mcp addコマンドで Stitch MCP を追加します。
claude mcp add stitch --transport http https://stitch.googleapis.com/mcp --header "X-Goog-Api-Key: <your-api-key>" -s user
- claude.json ファイルが更新されたことを確認します。
Added HTTP MCP server stitch with URL: https://stitch.googleapis.com/mcp to user config
Headers: {
"X-Goog-Api-Key": "<your-api-key>"
}
File modified: /Users/shiina.yuichi/.claude.json
- Claude Code CLI を起動し、
/mcpコマンドで MCP サーバーの接続状態を確認します。
stitch が"connected"と表示されていれば設定完了です。
Manage MCP servers
1 servers
User MCPs (/Users/shiina.yuichi/.claude.json)
❯ stitch · ✔ connected
https://code.claude.com/docs/en/mcp for help
↑↓ to navigate · Enter to confirm · Esc to cancel
利用可能なツールの確認
利用可能なツールを確認してみます。
Stitch MCP サーバーでどのようなツールを利用できますか
現時点では12個のツールが利用できるようです。

スクリーンの詳細情報の確認
プロジェクト情報を確認しながら、スクリーンの詳細情報を取得してみます。

基本情報や画面構成、デザインの特徴データを取得することができました。

Stitch Agent Skills を試す
Stitch MCP サーバーと連携するエージェントスキル集です。
主要なコーディングエージェントで利用できる、オープンスタンダード準拠の7つのスキルが用意されています。
スキル一覧
-
Stitch Design
統一エントリーポイントです。
プロンプトの強化、デザインシステムの合成、高精細な画面の生成・編集をまとめて処理する、Stitch デザイン作業の司令塔となります。 -
Stitch Loop
1 つのプロンプトから複数ページの Web サイトを自動生成します。
ファイルの整理と検証まで一気通貫で行います。 -
Design MD
デザインシステムのドキュメントを自動生成します。
プロジェクトを分析し、Stitch の画面生成に最適化された DESIGN.md を出力します。 -
Enhance Prompt
曖昧な UI アイデアを高品質なプロンプトに変換します。
UI/UX キーワードの追加やデザインシステムのコンテキスト注入により、生成精度を高めます。 -
React Components
Stitch の画面を React コンポーネントに変換します。
自動検証とデザイントークンの一貫性を担保します。 -
Remotion
アプリ画面のウォークスルー動画を自動生成します。
Remotion を使い、トランジション・ズーム・テキストオーバーレイ付きの紹介映像を作成できます。 -
shadcn/ui
shadcn/ui コンポーネントの統合ガイドです。
インストール・カスタマイズ・最適化をベストプラクティスに沿って支援します。
スキルの設定
- プロジェクトディレクトリに移動し、
skillsコマンドでスキルをインストールします。
cd stitch
npx skills add google-labs-code/stitch-skills --global
- すべてのスキルを選択し、インストールを行います。
███████╗██╗ ██╗██╗██╗ ██╗ ███████╗
██╔════╝██║ ██╔╝██║██║ ██║ ██╔════╝
███████╗█████╔╝ ██║██║ ██║ ███████╗
╚════██║██╔═██╗ ██║██║ ██║ ╚════██║
███████║██║ ██╗██║███████╗███████╗███████║
╚══════╝╚═╝ ╚═╝╚═╝╚══════╝╚══════╝╚══════╝
┌ skills
│
◇ Source: https://github.com/google-labs-code/stitch-skills.git
│
◇ Repository cloned
│
◇ Found 7 skills
│
◇ Select skills to install (space to toggle)
│ design-md, enhance-prompt, react:components, remotion, shadcn-ui, stitch-design, stitch-loop
│
◇ 42 agents
◇ Which agents do you want to install to?
│ Amp, Cline, Codex, Cursor, Gemini CLI, GitHub Copilot, Kimi Code CLI, OpenCode, Warp, Claude Code
│
◇ Installation method
│ Symlink (Recommended)
│
◇ Installation Summary ───────────────────────────────────────╮
│ │
│ ~/.agents/skills/design-md │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlink → Claude Code │
│ │
│ ~/.agents/skills/enhance-prompt │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlink → Claude Code │
│ │
│ ~/.agents/skills/react-components │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlink → Claude Code │
│ │
│ ~/.agents/skills/remotion │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlink → Claude Code │
│ │
│ ~/.agents/skills/shadcn-ui │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlink → Claude Code │
│ │
│ ~/.agents/skills/stitch-design │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlink → Claude Code │
│ │
│ ~/.agents/skills/stitch-loop │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlink → Claude Code │
│ │
├──────────────────────────────────────────────────────────────╯
│
◇ Security Risk Assessments ──────────────────────────────────────╮
│ │
│ Gen Socket Snyk │
│ design-md Safe 0 alerts Med Risk │
│ enhance-prompt Safe 0 alerts Low Risk │
│ react:components -- -- -- │
│ remotion Med Risk 0 alerts Med Risk │
│ shadcn-ui Safe 0 alerts Med Risk │
│ stitch-design Safe 0 alerts Med Risk │
│ stitch-loop Safe 0 alerts Low Risk │
│ │
│ Details: https://skills.sh/google-labs-code/stitch-skills │
│ │
├──────────────────────────────────────────────────────────────────╯
│
◇ Proceed with installation?
│ Yes
│
◇ Installation complete
│
◇ Installed 7 skills ─────────────────────────────────────────╮
│ │
│ ✓ ~/.agents/skills/design-md │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlinked: Claude Code │
│ ✓ ~/.agents/skills/enhance-prompt │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlinked: Claude Code │
│ ✓ ~/.agents/skills/react-components │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlinked: Claude Code │
│ ✓ ~/.agents/skills/remotion │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlinked: Claude Code │
│ ✓ ~/.agents/skills/shadcn-ui │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlinked: Claude Code │
│ ✓ ~/.agents/skills/stitch-design │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlinked: Claude Code │
│ ✓ ~/.agents/skills/stitch-loop │
│ universal: Amp, Cline, Codex, Cursor, Gemini CLI +4 more │
│ symlinked: Claude Code │
│ │
├──────────────────────────────────────────────────────────────╯
│
└ Done! Review skills before use; they run with full agent permissions.
- Claude Code CLI で
/skillsコマンドを実行し、インストール状況を確認します。
インストールしたスキルが表示されていれば設定完了です。
Skills
7 skills
User skills (~/.claude/skills)
stitch-design · ~55 description tokens
enhance-prompt · ~52 description tokens
shadcn-ui · ~44 description tokens
react:components · ~34 description tokens
remotion · ~31 description tokens
stitch-loop · ~29 description tokens
design-md · ~24 description tokens
Enhance Prompt
スキルを利用して自然言語の指示から、高品質なプロンプトに変換してみます。
Stitch生成結果を向上させるため、「街のベーカリショップのオンラインWebページの店舗情報ページを作成してください」というプロンプトを改善してください。

改善後プロンプト
クラフトベーカリー「Boulangerie Miel」の店舗情報ページ。
パン職人の哲学と店の温もりが伝わる、雑誌の特集記事のような
エディトリアルレイアウトのWebページ。
**DESIGN SYSTEM (REQUIRED):**
- Platform: Web, Desktop-first(モバイルレスポンシブ対応)
- Theme: Light, Japanese "Soft Minimalism", editorial craft aesthetic
- Background: Warm Off-White (#fff8f0) — 上質な紙のような温かみ
- Surface Card: Pure White (#ffffff) for content cards
- Surface Accent: Warm Cream (#faf3ea) for alternating sections
- Primary Accent: Terracotta (#904905) for CTAs and accent elements
- Secondary: Toasted Brown (#705a47) for secondary text and icons
- Text Primary: Dark Brown (#1e1b16) — pure blackは使用しない
- Text Secondary: Muted warm gray for descriptions and captions
- Outline: Ghost Border (#dac2b4) at 15% opacity — 明確なボーダーラインは使わない
- Buttons: xl rounded (1.5rem), primary buttons with subtle gradient
- Cards: xl rounded (1.5rem), no borders, tonal layering for depth
- Typography: Plus Jakarta Sans for headings (display/headline), Manrope for body text
- Shadows: Ambient only — rgba(59, 42, 26, 0.06), no standard drop shadows
- Spacing: generous whitespace("Ma")を基調とし、線ではなく背景色のトーン変化で区切る
**Page Structure:**
1. **ヘッダー:** ロゴ(左寄せ)、ナビゲーションメニュー(メニュー / ご注文 / 店舗情報)、
右側にカートアイコン。Glassmorphism効果の半透明バー。
「店舗情報」がアクティブ状態(左に4pxのTerracottaアクセントバー)。
2. **ヒーローセクション:** 店舗外観の大判写真をフルワイド配置。
早朝のゴールデンアワー照明で、木製ドアとガラス越しに並ぶパンが見える温かい写真。
写真の上にオーバーレイで「Boulangerie Miel」のdisplay-lg見出しと
「毎朝、小麦と向き合う。」のlabel-sm大文字サブテキスト。
写真は左右の境界を少しはみ出す非対称配置(Intentional Asymmetry)。
3. **ストーリーセクション(私たちについて):** 2カラムの非対称レイアウト。
左側(広め、約60%)にパン職人が生地をこねている写真。画像はカード境界を
わずかにはみ出す配置。右側にオーナーシェフの挨拶文。
見出し「パンへの想い」(headline weight)、本文は2-3段落のエディトリアル調テキスト。
「2015年、小さな工房から始まりました」のようなストーリー。
背景はsurface (#fff8f0)。
4. **こだわりセクション:** surface-container-low (#faf3ea) 背景で領域を区別。
3つのアイコン付きカードを横並び配置。
- 「厳選素材」: 小麦アイコン、国産小麦と天然酵母へのこだわり
- 「毎朝手作り」: 時計アイコン、早朝4時からの仕込み
- 「無添加」: リーフアイコン、保存料・着色料不使用
各カードはsurface-container-lowest (#ffffff)背景、xl角丸、
ホバー時1.02xスケール。アイコンはTerracotta (#904905) カラー。
5. **営業情報セクション:** 2カラムレイアウト。
左カラム: 営業時間テーブル(線なし、背景トーンの交互切替で行を区別)。
「営業時間」見出し(headline weight)。
- 月〜金: 7:00 - 19:00
- 土・日・祝: 8:00 - 18:00
- 定休日: 毎週水曜日(label-sm、Terracottaカラーで強調)
右カラム: 店舗情報リスト(アイコン + テキスト、縦並び、spacing-3で区切り)。
- 住所: 📍 東京都世田谷区〇〇 1-2-3
- 電話: 📞 03-XXXX-XXXX
- 席数: 店内イートイン 12席
- 駐車場: 2台分あり
6. **アクセスマップセクション:** フルワイドの埋め込み地図プレースホルダー
(角丸xl、surface-container-lowest背景)。
地図の下に最寄り駅からの道順テキスト:
「〇〇駅南口より徒歩5分。商店街を抜けた先、レンガの外壁が目印です。」
label-smサイズ、左寄せ。
7. **ギャラリーセクション:** surface-container-low (#faf3ea) 背景。
「店内の風景」のheadline見出し。
マソンリーグリッド(3カラム、不均等高さ)で店内写真を6-8枚配置。
木のカウンター、棚に並ぶパン、エスプレッソマシン、窓際の席など。
すべてゴールデンアワーの暖色トーン。各写真はxl角丸、ホバーで
わずかなオーバーレイとキャプション表示。
8. **お問い合わせCTAセクション:** surface (#fff8f0) 背景にセンター配置。
「お気軽にお問い合わせください」のheadline見出し。
「ご予約・お取り置き・特注ケーキのご相談など」のbodyサブテキスト。
「お問い合わせ」Primaryグラデーションボタンと
「Instagramを見る」Secondaryボタンを横並び。
9. **フッター:** surface-container-low背景。
3カラム: 左にロゴと一行キャッチコピー、中央に各ページへのリンク、
右にSNSアイコン(Instagram / LINE)。
最下部に「© Boulangerie Miel」のlabel-sm著作権表示。
**Atmosphere & Details:**
- 全体を「パン職人の一日を追ったドキュメンタリー雑誌」のようなトーンで
- 写真は暖色系・ゴールデンアワー照明で統一、冷たい蛍光灯感は排除
- テキストは左寄せを基本に、エディトリアルな読みやすさを優先
- セクション間は線やボーダーではなく、背景色のトーンシフト
(#fff8f0 → #faf3ea の交互切替)で視覚的に区切る
- display-lgとlabel-smのコントラスト比を活かした力強い見出し階層
- スクロール時の余白(Ma)を贅沢に取り、情報過多にしない
Stitch Design
改善後のプロンプトを利用して、店舗情報ページをデザインしてみます。


数分でページのデザインが生成されました。
HTML ファイルやスクリーンショット(PNG)も一緒に出力されます。



Design MD
Stitch のサンプルプロジェクト「Personal photo library」のスクリーンショットから DESIGN.md を生成してみます。

sample-image.png のスクリーンショットを分析し、デザインシステムを文書化した包括的なDESIGN.mdファイルを生成して

生成された DESIGN.md
# Photo Library - Design System
## Overview
Photo Library は、写真の閲覧・管理を目的としたデスクトップアプリケーションUI。3カラムレイアウトを採用し、サイドバーナビゲーション、サムネイルグリッド、詳細パネルで構成される。クリーンでミニマルなデザインに、適度なアクセントカラーを組み合わせた視認性の高いインターフェース。
---
## Layout
### Structure
┌──────────┬──────────────────────────┬──────────────┐
│ Sidebar │ Content Grid │ Detail Panel │
│ ~180px │ flexible │ ~240px │
│ │ │ │
└──────────┴──────────────────────────┴──────────────┘
- **3カラムレイアウト**: サイドバー(固定幅) + コンテンツグリッド(可変幅) + 詳細パネル(固定幅)
- サイドバーとコンテンツ領域の間に薄い境界線あり
- 詳細パネルはコンテンツ領域の右側に配置
### Spacing
| Token | Value | Usage |
|--------------|---------|--------------------------------|
| `space-xs` | 4px | アイコンとラベル間 |
| `space-sm` | 8px | グリッドアイテム間のギャップ |
| `space-md` | 12px | セクション内パディング |
| `space-lg` | 16px | サイドバー内パディング |
| `space-xl` | 24px | セクション間マージン |
---
## Color Palette
### Base Colors
| Token | Value | Usage |
|----------------------|-------------|-------------------------------------|
| `--bg-primary` | `#FFFFFF` | メインコンテンツ背景 |
| `--bg-secondary` | `#F5F6F8` | サイドバー・詳細パネル背景 |
| `--bg-tertiary` | `#EBEDF0` | サムネイル背景・ホバー状態 |
| `--border-light` | `#E2E4E8` | セクション区切り線 |
### Text Colors
| Token | Value | Usage |
|----------------------|-------------|-------------------------------------|
| `--text-primary` | `#1A1D23` | 見出し・ファイル名 |
| `--text-secondary` | `#6B7280` | メタデータラベル(File Name等) |
| `--text-tertiary` | `#9CA3AF` | プレースホルダー・補助テキスト |
### Accent Colors
| Token | Value | Usage |
|----------------------|-------------|-------------------------------------|
| `--accent-primary` | `#2B7A78` | アクティブタブ下線・選択状態 |
| `--accent-select` | `#3B9FD9` | 選択写真のボーダー |
| `--accent-highlight` | `#E8A830` | アクティブアルバムの左ボーダー |
### Thumbnail Palette (コンテンツカラー)
サムネイルには以下のようなカラーバリエーションが見られる:
| Category | Colors |
|--------------|--------------------------------------------------|
| Dark | `#2C3E50`, `#1B2838` - ダーク背景のサムネイル |
| Teal/Green | `#2B7A78`, `#4A9E8E` - 自然・植物系 |
| Light | `#D4E5D7`, `#E8EDF0` - 明るい背景のサムネイル |
| Warm | `#E8A830`, `#D4854A` - アクセントカラー |
---
## Typography
| Token | Size | Weight | Usage |
|-------------------|--------|------------|----------------------------------|
| `--font-title` | 18px | Bold (700) | アプリタイトル「Photo Library」 |
| `--font-nav` | 14px | Regular (400) | サイドバーアルバム名 |
| `--font-tab` | 13px | Medium (500) | タブラベル(Details等) |
| `--font-label` | 12px | Regular (400) | メタデータラベル |
| `--font-value` | 13px | Medium (500) | メタデータ値 |
| `--font-small` | 11px | Regular (400) | 補助情報 |
- **Font Family**: System font stack (`-apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif`)
- **Line Height**: 1.4 - 1.6(テキスト密度に応じて調整)
---
## Components
### 1. Search Bar
┌─ 🔍 Search ──────────┐
└───────────────────────┘
- 角丸: `border-radius: 6px`
- 背景: `--bg-primary` (#FFFFFF)
- ボーダー: `1px solid --border-light`
- 左側に検索アイコン(虫眼鏡)
- プレースホルダーテキスト: `--text-tertiary`
- 高さ: ~32px
### 2. Album List (Navigation)
Album 01
Album 02
Album 03
▌ Squirrels ← active
Acorns
The Beach
- **デフォルト状態**: `--text-secondary`, 背景なし
- **アクティブ状態**: `--text-primary`, 左側に `--accent-highlight` (ゴールド) の 3px ボーダー
- **ホバー状態**: `--bg-tertiary` 背景
- パディング: `8px 16px`
- アイテム間隔: 0px(連続配置)
### 3. View Mode Toggle
┌─┐ ┌─┐ ┌─┐
│▦│ │≡│ │⊞│
└─┘ └─┘ └─┘
- 3つのビューモード: グリッド(小)、リスト、グリッド(大)
- 中央上部に配置
- アクティブ状態: アイコン色が `--text-primary` に変化
- 非アクティブ状態: `--text-tertiary`
### 4. Thumbnail Grid
┌────┐ ┌────┐ ┌────┐ ┌────┐ ┌────┐
│ │ │ │ │ │ │ ✓ │ │ │
└────┘ └────┘ └────┘ └────┘ └────┘
- グリッドレイアウト: 5列(レスポンシブに調整可能)
- アスペクト比: 1:1(正方形)
- 角丸: `border-radius: 8px`
- ギャップ: `8px`
- **デフォルト状態**: ボーダーなし、`--bg-tertiary` 背景
- **選択状態**: `2px solid --accent-select` (ブルー) のボーダー
- **ホバー状態**: 軽いシャドウまたはオーバーレイ
### 5. Detail Panel
#### Image Preview
- 角丸: `border-radius: 8px`
- 最大幅: パネル幅に合わせて調整
- アスペクト比: 元画像を維持
#### Tab Navigation
Details Content Colors
───────
- アクティブタブ: `--accent-primary` の下線(2px)、`--text-primary` テキスト
- 非アクティブタブ: `--text-secondary`、下線なし
- タブ間隔: `16px`
#### Metadata Section
File Name
squirrel_image_01.jpg
Date Taken
October 26, 2023
Dimensions
3024 × 4032
Size
2.5 MB
Dominant Colors
● ● ● ●
- ラベル: `--font-label`, `--text-secondary`
- 値: `--font-value`, `--text-primary`
- ラベルと値の間隔: `4px`
- メタデータ項目間の間隔: `12px`
#### Color Swatches (Dominant Colors)
- 形状: 円形 (`border-radius: 50%`)
- サイズ: 16px x 16px
- 間隔: `6px`
- サンプルカラー: オレンジ (#D4854A), ダークグリーン (#2C5F4A), ティール (#3B8E8C), ライトブルー (#A8D4D0)
---
## Borders & Shadows
| Token | Value | Usage |
|----------------------|--------------------------------|--------------------------|
| `--radius-sm` | `4px` | 小さいUI要素 |
| `--radius-md` | `6px` | 検索バー・ボタン |
| `--radius-lg` | `8px` | サムネイル・プレビュー画像 |
| `--border-default` | `1px solid #E2E4E8` | 区切り線 |
| `--border-selected` | `2px solid #3B9FD9` | 選択アイテム |
| `--shadow-card` | `0 1px 3px rgba(0,0,0,0.08)` | カード要素(軽微) |
---
## Interaction States
| State | Visual Treatment |
|------------|----------------------------------------------------------|
| Default | 標準背景・テキストカラー |
| Hover | 背景色が `--bg-tertiary` に変化、またはシャドウ追加 |
| Active | アクセントカラーのボーダーまたは下線 |
| Selected | `--accent-select` ボーダー(サムネイル) |
| Focus | `2px solid --accent-primary` のアウトライン |
| Disabled | `opacity: 0.5`, カーソル `not-allowed` |
---
## Iconography
- スタイル: アウトラインベース、線幅 1.5px
- サイズ: 16px(ナビゲーション)、20px(アクション)
- カラー: `--text-secondary`(デフォルト)、`--text-primary`(アクティブ)
- 使用アイコン:
- 検索(虫眼鏡)
- グリッドビュー(4x4ドット)
- リストビュー(横線)
- 拡大グリッドビュー(2x2ドット)
---
## Design Principles
1. **クリーン & ミニマル**: 装飾を最小限に抑え、コンテンツ(写真)を主役にする
2. **視覚的階層**: サイドバー → グリッド → 詳細パネルの3段階で情報を整理
3. **コントラストバランス**: 明るい背景にダークテキスト、アクセントカラーは控えめに使用
4. **一貫した角丸**: 8px を基準として統一感を維持
5. **サブトルなフィードバック**: 選択・ホバー状態は控えめだが明確に視覚化
まとめ
今回はリニューアルされた Google Stitch の新機能を一通り試してみました。
プロンプトからのデザイン生成、アノテーションによる細かな修正、ワンクリックでのプロトタイプ生成など、デザインの作成から検証までを一つのツール内で完結できる点は魅力的です。
MCP サーバーと Skills による AI 連携も可能となり、デザインと開発のワークフローがよりシームレスになりそうです。
AI デザインツールの進化により、アイデアをプロトタイプとして形にするまでのスピードが格段に上がっていると感じます。
現時点ではベータ版ですが、今後の一般提供が楽しみですね。
本記事が参考になれば幸いです。
参考









