Tiro
Tiro Design
Guidelines

Writing

UX 마이크로카피 원칙 + 언어별 패턴.

UX Microcopy Rules

ElementRuleGoodBad
Button label동사 우선, ≤ 3 단어"Save note""Click here to save"
Destructive confirm명사 + 액션"Delete 3 notes?""Are you sure?"
Error원인 + 복구"Couldn't save. Check your connection.""Error 500"
Empty state title상태 서술"No notes yet""Empty folder"
Empty state CTA상태 해결"Record your first note""Go back"
Placeholder입력 예시"e.g. Q4 planning meeting""Enter a title"
Helper textActionable"Used for password recovery""This is your email"
Toast success과거형 + 대상"Note saved""Saving..."
Toast error문제 + 복구"Upload failed. Retry?""Something went wrong"

Language-Specific Patterns

각 시장은 native-authored — 기계적 번역 금지.

English — Punchy, Aspirational

  • 짧은 선언적 파편. 타이틀 케이스 헤드라인.
  • Minimal 구두점 — 파편에 마침표 없음.
  • 브랜드 모멘트는 Averia 사용. 세리프가 "crafted" 질감을 전달.
  • 가장 짧은 컨셉당 단어 수; 한 줄에 한 아이디어.

Korean — Assertive, Benefit-Forward (한국어)

  • 혜택 선두, 결과·액션으로 끝: "대화에만 집중할 수 있게."
  • "~까지"로 포괄성 부여: "원클릭 공유까지."
  • 한국어 UI 헤드라인은 Pretendard JP 사용 (세리프 아님). 한글 세리프는 Averia의 따뜻함이 부족.
  • Noto Serif KR은 editorial weight가 필요한 전용 마케팅 헤드라인에만.
  • 긴 문장 허용 (KO density 높음).
  • "Tiro" 항상 "티로"와 짝: "티로 Tiro" — 한쪽 단독 금지.

Japanese — Measured, Parallel (日本語)

  • 헤드라인에도 "。" 사용 (JP 마케팅 관행).
  • Comma-pause 리듬: "完璧な議事録を、自動で。" — "、"가 payoff 전 숨 고르기.
  • "即" 전략적 사용: "即要約", "即共有".
  • "・"가 병렬 명사 연결: "AI議事録・文字起こし・翻訳".
  • KO density와 EN brevity 중간. 카드당 한 혜택.
  • 브랜드 디스플레이: Noto Serif JP.

컴포넌트 스트링 아키텍처

  • 컴포넌트는 절대 브랜드 카피를 하드코딩하지 않음. title, description, label을 props로 받음.
  • 마케팅 카피: tiro-client/packages/marketing/strings (경로 확인 필요).
  • 제품 UX 스트링: packages/locales/src/{ko,en,ja}/common.json.

Localization Constraints

  • 문장 파편 concatenation 금지 — 로케일별 완전 문장.
  • EN → KO/JA 30–40% 길이 확장 허용 — fixed px 금지.
  • Date/time: Intl.DateTimeFormat + locale. 수동 포맷 금지.
  • 존댓말: KO는 합쇼체 (formal) 시스템 카피, 반말은 팀 내부 툴만.
  • 로그인 헤드라인, AI 채팅 인사, SSO 라벨은 모든 로케일에서 영어 — global-premium 일관성 의도.

Do / Don't

  • Do: 동사 우선 짧은 버튼 라벨
  • Do: 에러는 문제 + 복구 2단 구성
  • Don't: "Are you sure?" 같은 명사 누락 confirm
  • Don't: Placeholder를 label 대용으로 사용
  • Don't: 한 언어에서 만든 카피를 다른 언어로 기계적 번역

On this page