| name | rn-harness-design |
| description | Phase 3 โ Design system with NativeWind theme, colors, typography, and component specs. |
| allowed-tools | ["Read","Write","Edit","Bash","Glob","Grep","AskUserQuestion"] |
rn-harness-design โ Phase 3: ๋์์ธ ์์คํ
PRD๋ฅผ ๊ธฐ๋ฐ์ผ๋ก NativeWind ๋์์ธ ์์คํ
์ ์ค๊ณํ๋ค.
Trigger
์ค์ผ์คํธ๋ ์ดํฐ์์ Phase 3์ผ๋ก ํธ์ถ๋จ.
Input
docs/harness/plans/YYYY-MM-DD-prd.md (PRD)
docs/harness/references/ (์์ผ๋ฉด)
Process
Step 1: ๋ธ๋๋ ํค ๊ฒฐ์
3๊ฐ์ง ๋น์ฃผ์ผ ๋ฐฉํฅ ์ ์:
- ๋ฏธ๋๋ฉ โ ๊น๋, ์ฌ๋ฐฑ, ๋ชจ๋
ธํค
- ์ โ ๋ฐ๋ปํ ์๊ฐ, ๋ผ์ด๋, ์น๊ทผ
- ๋ณผ๋ โ ๊ฐ๋ ฌํ ์์, ๋๋น, ์ํฉํธ
AskUserQuestion์ผ๋ก ์ฌ์ฉ์ ์ ํ.
Step 2: ์ปฌ๋ฌ ์์คํ
colors: {
primary: {
50: '#...',
100: '#...',
DEFAULT: '#...',
},
secondary: { ... },
success: '#...',
warning: '#...',
error: '#...',
info: '#...',
background: '#...',
surface: '#...',
text: {
primary: '#...',
secondary: '#...',
disabled: '#...',
},
}
Light/Dark ๋ชจ๋ ๋ชจ๋ ์ ์.
Step 3: ํ์ดํฌ๊ทธ๋ํผ
Heading 1: 28px / Bold / line-height 36
Heading 2: 24px / Semibold / line-height 32
Heading 3: 20px / Semibold / line-height 28
Body: 16px / Regular / line-height 24
Caption: 12px / Regular / line-height 16
Label: 14px / Medium / line-height 20
Step 4: ์ปดํฌ๋ํธ ์คํ
์ฃผ์ ์ปดํฌ๋ํธ variant ์ ์:
- Button: primary, secondary, outline, ghost / sm, md, lg
- Card: default, elevated, outlined
- Input: default, error, disabled / with icon
- Typography: h1, h2, h3, body, caption, label
- Badge: default, success, warning, error
- Toast: success, error, info, warning
Step 5: ํ๋ฉด ๋ ์ด์์
๊ฐ ์ฃผ์ ํ๋ฉด์ ๋ ์ด์์ ๊ตฌ์กฐ:
<SafeAreaView className="flex-1 bg-background">
<Header />
<ScrollView className="flex-1 px-4">
{/* Content */}
</ScrollView>
{}
<AdBanner />
</SafeAreaView>
Step 6: ๊ด๊ณ ๋ฐฐ์น ๋์์ธ
AdMob ๊ด๊ณ ์ ์๊ฐ์ ํตํฉ:
- ๋ฐฐ๋: ์ฝํ
์ธ ์ ์์ฐ์ค๋ฝ๊ฒ ์ด์ฐ๋ฌ์ง๋ ๋ฐฐ์น
- ์ ๋ฉด: ๋ซ๊ธฐ ๋ฒํผ ์ ๊ทผ์ฑ ํ๋ณด
- ๋ฆฌ์๋: ๋ณด์ ์๋ด UI ๋์์ธ
Step 7: 4์ถ ์์ฒด ํ๊ฐ
| ์ถ | ๋น์ค | ๋ชฉํ | ์ค๋ช
|
|---|
| Design Quality | 30% | 7/10+ | ์ผ๊ด์ฑ, ์ ์ฒด์ฑ |
| Originality | 25% | 6/10+ | ์ปค์คํ
๊ฒฐ์ , ํ
ํ๋ฆฟ ํํผ |
| Craft | 25% | 7/10+ | ๊ฐ๊ฒฉ, ํ์ดํฌ, ๋๋น |
| Functionality | 20% | 8/10+ | ์ฌ์ฉ์ฑ |
Output
docs/harness/plans/YYYY-MM-DD-design.md:
# Design System
## ๋ธ๋๋ ํค
[์ ํ๋ ํค + ์ด์ ]
## ์ปฌ๋ฌ ์์คํ
### Light Mode
### Dark Mode
## ํ์ดํฌ๊ทธ๋ํผ
## ์ปดํฌ๋ํธ ์คํ
### Button
### Card
### Input
### Typography
## ํ๋ฉด ๋ ์ด์์
### ํ
### ์์ธ
### ํ๋กํ
## ๊ด๊ณ ๋ฐฐ์น ๋์์ธ
## ์์ฒด ํ๊ฐ
| ์ถ | ์ ์ | ๊ทผ๊ฑฐ |
์ถ๊ฐ๋ก ํ์ผ ์ง์ ์์ :
tailwind.config.js โ colors, fonts ํ์ฅ
src/shared/config/theme.ts โ ํ
๋ง ํ ํฐ ์ ์
State Update
current_phase: contract
next_role: rn-harness-contract
HARD GATES
- NativeWind className๋ง ์ฌ์ฉ (inline style ๊ธ์ง)
- Light/Dark ๋ชจ๋ ๋ชจ๋ ์ ์
- ์ปฌ๋ฌ ๋๋น 4.5:1 ์ด์
- SafeAreaView ๋ชจ๋ ํ๋ฉด์ ํ์
- ์ฌ์ฉ์ ๋ธ๋๋ ํค ํ์ธ ํ์