---
name: awesome-design-md-jp
description: Create accurate Japanese UI DESIGN.md files for AI agents with proper CJK typography, font stacks, line-height, kinsoku shori, and mixed typesetting rules.
triggers:
- create a DESIGN.md for a Japanese website
- generate Japanese UI design spec
- add Japanese typography to DESIGN.md
- write design spec for Japanese web app
- CJK font stack for AI agent
- Japanese line-height and letter-spacing spec
- kinsoku shori design rules
- Japanese UI design system markdown
---
# Awesome Design MD JP
> Skill by [ara.so](https://ara.so) — Daily 2026 Skills collection.
A curated collection of `DESIGN.md` files for Japanese web services, extending the Google Stitch DESIGN.md format with CJK typography, Japanese font stacks, kinsoku shori (禁則処理), and mixed typesetting (混植) rules — enabling AI agents to generate accurate Japanese UI.
---
## What This Project Does
[DESIGN.md](https://stitch.withgoogle.com/docs/design-md/overview/) is a plain-text markdown file AI coding agents read to generate consistent UI. This project extends that format for Japanese services, covering:
- **CJK font-family fallback chains** (和文 → 欧文 → generic)
- **Higher line-height** (1.5–2.0 vs Western 1.4–1.5)
- **Japanese letter-spacing** (`0.04em`–`0.1em` for body text)
- **Kinsoku shori (禁則処理)** — CJK punctuation line-break rules
- **OpenType features** (`palt`, `kern`) for proportional typesetting
- **Mixed typesetting (混植)** — combining Japanese and Latin typefaces
24 reference DESIGN.md files are included: Apple Japan, MUJI, Mercari, SmartHR, freee, note, LINE, Rakuten, Qiita, Zenn, pixiv, and more.
---
## Installation / Setup
Clone or reference the repository directly — no build step required.
```bash
git clone https://github.com/kzhrknt/awesome-design-md-jp.git
cd awesome-design-md-jp
```
Copy the template into your project:
```bash
cp template/DESIGN.md your-project/DESIGN.md
```
Or reference an existing service as a starting point:
```bash
cp design-md/muji/DESIGN.md your-project/DESIGN.md
# then edit for your brand
```
Place `DESIGN.md` at your project root alongside `AGENTS.md`:
```
your-project/
├── AGENTS.md # how to build
├── DESIGN.md # how it should look and feel ← add this
├── src/
└── ...
```
---
## DESIGN.md Template Structure
The template extends the standard Google Stitch 9-section format with Japanese typography subsections.
### Full Template
```markdown
# DESIGN.md
## 1. Overview
Brief description of the product, target users, and overall visual direction.
## 2. Color Palette
| Token | Value | Usage |
|-----------------|-----------|------------------|
| `--color-primary` | `#0066CC` | CTAs, links |
| `--color-bg` | `#FFFFFF` | Page background |
| `--color-text` | `#1A1A1A` | Body text |
| `--color-muted` | `#666666` | Secondary text |
## 3. Typography
### 3.1 Font Families
**和文(Japanese)**
```css
font-family:
"Noto Sans JP", /* Google Fonts — preferred web font */
"Hiragino Kaku Gothic ProN", /* macOS / iOS */
"Hiragino Sans", /* macOS newer */
"Meiryo", /* Windows */
"Yu Gothic", /* Windows 8.1+ */
sans-serif;
```
**欧文(Latin / alphanumeric)**
```css
font-family:
"Inter", /* preferred web font for Latin */
-apple-system,
BlinkMacSystemFont,
"Segoe UI",
sans-serif;
```
**混植(Mixed typesetting)**
Use Japanese font as base; Latin glyphs rendered by Inter layered on top via `@font-face` unicode-range.
### 3.2 Type Scale
| Role | Size | Weight | Line-height | Letter-spacing |
|------------|----------|--------|-------------|----------------|
| Display | 2.5rem | 700 | 1.4 | -0.02em |
| Heading 1 | 2rem | 700 | 1.5 | -0.01em |
| Heading 2 | 1.5rem | 600 | 1.5 | 0 |
| Body | 1rem | 400 | 1.8 | 0.04em |
| Small | 0.875rem | 400 | 1.7 | 0.04em |
| Caption | 0.75rem | 400 | 1.6 | 0.06em |
### 3.3 Japanese Typography Rules
**Line-height:** Use 1.7–2.0 for body text (wider than Western 1.4–1.5).
**Letter-spacing:** Apply `0.04em`–`0.1em` to body Japanese text; headings may use `0` or slightly negative.
**Kinsoku shori (禁則処理):**
```css
word-break: normal;
overflow-wrap: break-word;
line-break: strict; /* enforce JIS kinsoku rules */
```
- 行頭禁則文字 (cannot start a line): `)」』】、。・:;?!…―`
- 行末禁則文字 (cannot end a line): `(「『【`
**OpenType features:**
```css
font-feature-settings: "palt" 1, "kern" 1;
/* palt = proportional alternate widths for punctuation */
/* kern = kerning */
```
**Text rendering:**
```css
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
```
## 4. Spacing & Layout
Base unit: `8px`
| Token | Value |
|--------------|--------|
| `--space-xs` | `4px` |
| `--space-sm` | `8px` |
| `--space-md` | `16px` |
| `--space-lg` | `32px` |
| `--space-xl` | `64px` |
Max content width: `1200px` with `24px` horizontal padding on mobile.
## 5. Components
[Describe buttons, inputs, cards, navigation patterns]
## 6. Icons & Imagery
[Icon set, image ratios, illustration style]
## 7. Motion & Animation
[Transition durations, easing curves]
## 8. Responsive Breakpoints
| Name | Width |
|--------|----------|
| Mobile | < 768px |
| Tablet | 768–1024px |
| Desktop| > 1024px |
## 9. Accessibility
- Contrast ratio: minimum 4.5:1 for body text
- Focus indicators: visible outline
- Tap targets: minimum 44×44px
```
---
## Reference DESIGN.md Examples
### MUJI Style (Minimalist Retail)
```markdown
## Color Palette
| Token | Value |
|--------------------|-----------|
| `--color-primary` | `#000000` |
| `--color-bg` | `#F5F5F0` |
| `--color-text` | `#333333` |
| `--color-border` | `#DDDDDD` |
## Typography
### Font Stack
```css
font-family:
"Noto Serif JP",
"Hiragino Mincho ProN",
"Yu Mincho",
"MS Mincho",
Georgia,
serif;
```
### Body
- font-size: 15px
- line-height: 2.0
- letter-spacing: 0.08em
- font-feature-settings: "palt" 1
### Design Principles
- 徹底した余白(generous whitespace as design element)
- 無彩色を基調(achromatic base palette)
- 装飾を排除(eliminate decoration)
```
### SmartHR Style (B2B SaaS)
```markdown
## Color Palette
| Token | Value |
|-------------------|-----------|
| `--color-primary` | `#0077C8` |
| `--color-success` | `#28A745` |
| `--color-warning` | `#FFC107` |
| `--color-danger` | `#DC3545` |
| `--color-bg` | `#F8F9FA` |
| `--color-text` | `#212529` |
## Typography
### Font Stack
```css
font-family:
"Hiragino Kaku Gothic ProN",
"Hiragino Sans",
Meiryo,
"Yu Gothic",
sans-serif;
```
### Type Scale
- Display: 28px / weight 700 / line-height 1.4 / ls 0
- Body: 14px / weight 400 / line-height 1.8 / ls 0.04em
- Label: 12px / weight 500 / line-height 1.6 / ls 0.06em
- Note: Dense information layout — prioritize readability at small sizes
```
### note Style (Media / Publishing)
```markdown
## Typography
### Font Stack
```css
/* Heading */
font-family: "Noto Serif JP", "Hiragino Mincho ProN", serif;
/* Body */
font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
```
### Reading Typography
- Body: 18px / line-height 1.9 / letter-spacing 0.04em
- Max line length: 38–40 chars (約38文字で折り返し)
- Paragraph spacing: 1.5em
- Drop cap on first paragraph of long-form content
```
---
## CSS Boilerplate for Japanese UI
Use this as a starting point in any project informed by these DESIGN.md files:
```css
/* ===== Japanese Typography Base ===== */
:root {
/* Font families */
--font-ja-sans: "Noto Sans JP", "Hiragino Kaku Gothic ProN",
"Hiragino Sans", "Meiryo", "Yu Gothic", sans-serif;
--font-ja-serif: "Noto Serif JP", "Hiragino Mincho ProN",
"Yu Mincho", "MS Mincho", Georgia, serif;
--font-en: "Inter", -apple-system, BlinkMacSystemFont,
"Segoe UI", sans-serif;
/* Type scale */
--text-display: 2.5rem;
--text-h1: 2rem;
--text-h2: 1.5rem;
--text-h3: 1.25rem;
--text-body: 1rem;
--text-sm: 0.875rem;
--text-xs: 0.75rem;
/* Line heights */
--lh-tight: 1.4; /* headings */
--lh-normal: 1.8; /* body */
--lh-loose: 2.0; /* long-form reading */
/* Letter spacing */
--ls-tight: -0.02em;
--ls-normal: 0.04em;
--ls-wide: 0.08em;
}
/* Base Japanese text rendering */
body {
font-family: var(--font-ja-sans);
font-size: var(--text-body);
line-height: var(--lh-normal);
letter-spacing: var(--ls-normal);
font-feature-settings: "palt" 1, "kern" 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-rendering: optimizeLegibility;
}
/* Kinsoku shori */
p, li, td, th {
word-break: normal;
overflow-wrap: break-word;
line-break: strict;
}
/* Headings */
h1, h2, h3, h4, h5, h6 {
line-height: var(--lh-tight);
letter-spacing: var(--ls-tight);
font-feature-settings: "palt" 1;
}
/* Mixed typesetting — Latin numerals and ASCII via Inter */
@font-face {
font-family: "Inter-for-JP";
src: url("https://fonts.gstatic.com/s/inter/v13/...") format("woff2");
unicode-range: U+0020-007E; /* Basic Latin only */
}
```
---
## Font Loading (Google Fonts)
```html
```
---
## Common Patterns by Service Category
### Consumer App (LINE, Mercari)
```markdown
- Font: Noto Sans JP + system fallbacks
- Line-height body: 1.7
- Letter-spacing: 0.04em
- Primary color: brand-specific bold color
- Mobile-first, 375px base
- Tap targets: 48px minimum
```
### B2B SaaS (SmartHR, freee, Cybozu)
```markdown
- Font: Hiragino Kaku Gothic ProN preferred (system), Noto Sans JP web
- Line-height body: 1.8 (dense data tables may use 1.5)
- Letter-spacing: 0.04em
- Neutral palette with clear action color
- Information density: high
- Data tables with sticky headers
```
### Editorial / Media (note, WIRED.jp, Qiita, Zenn)
```markdown
- Font: Noto Serif JP or Hiragino Mincho for body; sans for UI chrome
- Line-height body: 1.9–2.0
- Letter-spacing: 0.06em
- Max line length: 38–42 characters (約40文字)
- Code blocks: monospace with JIS-compatible fallback
```
### Retail / Lifestyle (MUJI, Toyota)
```markdown
- Font: Serif for premium feel; sans for utility text
- Line-height: 2.0 (generous whitespace)
- Letter-spacing: 0.08em (airy)
- Achromatic or very restrained palette
- High-quality imagery as primary content
```
---
## Viewing Previews
Each DESIGN.md has an accompanying `preview.html` that visualizes design tokens:
```bash
# Open any preview locally
open design-md/muji/preview.html
open design-md/smarthr/preview.html
# Or view the full gallery
open design-md/gallery.html
# or visit: https://kzhrknt.github.io/awesome-design-md-jp/gallery.html
```
---
## Telling an AI Agent to Use DESIGN.md
When the file is at your project root, reference it explicitly in your prompt:
```
Read DESIGN.md and create a Japanese landing page hero section following
the typography and color specifications defined there. Use the exact
font-family fallback chain, line-height, and letter-spacing values specified.
Implement kinsoku shori with line-break: strict.
```
For Claude Code / Cursor, you can also reference specific sections:
```
Following DESIGN.md section 3.3 (Japanese Typography Rules), update the
global CSS to add proper kinsoku shori, font-feature-settings, and
-webkit-font-smoothing for all text elements.
```
---
## Troubleshooting
### AI generates wrong Japanese fonts
**Problem:** Agent uses `"MS Gothic"` or generic `sans-serif` only.
**Fix:** Make font-family fallback chain explicit in DESIGN.md with comments explaining each fallback's platform target.
```markdown
### Font Stack (REQUIRED — do not simplify)
```css
font-family:
"Noto Sans JP", /* web font — always load via Google Fonts */
"Hiragino Kaku Gothic ProN", /* macOS / iOS system */
"Hiragino Sans", /* macOS 10.11+ */
"Meiryo", /* Windows */
"Yu Gothic", /* Windows 8.1+ */
sans-serif; /* absolute fallback */
```
```
### Line-height too tight on Japanese text
**Problem:** Agent uses `line-height: 1.5` from a Western design system.
**Fix:** Specify explicitly in DESIGN.md with a note:
```markdown
**IMPORTANT:** Japanese body text requires line-height 1.7–2.0,
NOT the Western default of 1.4–1.5. Use 1.8 for standard body copy.
```
### Punctuation appearing at line start/end incorrectly
**Problem:** `。` or `、` wraps to start of next line; `「` hangs at end.
**Fix:** Add kinsoku rules explicitly:
```markdown
### Kinsoku Shori (禁則処理) — REQUIRED
```css
p { line-break: strict; word-break: normal; overflow-wrap: break-word; }
```
Characters that MUST NOT start a line: )」』】、。・:;?!…―
Characters that MUST NOT end a line: (「『【
```
### Proportional punctuation not activating
**Problem:** Japanese commas and periods render full-width, looking too spaced.
**Fix:** Ensure font-feature-settings is applied:
```markdown
font-feature-settings: "palt" 1, "kern" 1;
/* palt = proportional alternates — narrows full-width punctuation */
/* Required for Noto Sans JP, Hiragino fonts */
```
### Mixed Japanese/Latin spacing looks wrong
**Problem:** Latin letters inside Japanese text have no breathing room.
**Fix:** Document the spacing rule in DESIGN.md:
```markdown
### Mixed Typesetting (混植)
- Insert a thin space (U+202F or 0.25em margin) between Japanese and Latin runs
- OR use CSS: `ruby { margin: 0 0.1em; }` pattern
- Preferred: use a font that handles this (Noto CJK with auto-spacing)
```
---
## Contributing a New DESIGN.md
```bash
# 1. Create directory
mkdir design-md/your-service
# 2. Copy template
cp template/DESIGN.md design-md/your-service/DESIGN.md
# 3. Fill in all 9 sections including Japanese typography subsections
# 4. Create preview.html from the preview template
cp template/preview.html design-md/your-service/preview.html
# 5. Take a screenshot at 1280×800 → preview-screenshot.png
```
Required sections for acceptance:
- ✅ Color palette with CSS custom property names
- ✅ Japanese font-family fallback chain with platform comments
- ✅ Type scale table with line-height AND letter-spacing columns
- ✅ Kinsoku shori CSS rules
- ✅ font-feature-settings specification
- ✅ Responsive breakpoints