ワンクリックで
ballog-tailwind-cn
Ballog 프로젝트의 Tailwind + cn() 사용 규칙. 조건부 클래스 가독성, twMerge 충돌 회피, 반복 유틸 추출 기준. className을 작성하거나 리뷰할 때 참조.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Ballog 프로젝트의 Tailwind + cn() 사용 규칙. 조건부 클래스 가독성, twMerge 충돌 회피, 반복 유틸 추출 기준. className을 작성하거나 리뷰할 때 참조.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
| name | ballog-tailwind-cn |
| description | Ballog 프로젝트의 Tailwind + cn() 사용 규칙. 조건부 클래스 가독성, twMerge 충돌 회피, 반복 유틸 추출 기준. className을 작성하거나 리뷰할 때 참조. |
import { cn } from '@/shared/lib/classnames'
clsx + tailwind-merge 래퍼. 조건부 클래스와 Tailwind 충돌 해결을 동시에 처리한다.
❌ 한 줄에 몰아넣기
<div className="flex items-center gap-2 px-4 py-2 rounded-lg bg-white text-gray-900 hover:bg-gray-50">
✅ 관심사별로 줄바꿈
<div
className={cn(
'flex items-center gap-2',
'px-4 py-2 rounded-lg',
'bg-white text-gray-900',
'hover:bg-gray-50',
)}
>
✅
className={cn(
'rounded-full px-3 py-1',
isActive && 'bg-primary text-white',
disabled && 'opacity-50 pointer-events-none',
)}
❌ cn 없이 템플릿 리터럴
className={`${base} ${isActive ? 'bg-primary' : ''}`}
같은 prop → className 매핑이 2번 이상 등장하면 모듈 상단 상수로 분리.
const sizeStyle = {
sm: 'h-8 px-3 text-sm',
md: 'h-10 px-4 text-base',
lg: 'h-12 px-5 text-lg',
} as const
<button className={cn('rounded-lg', sizeStyle[size])}>
cn('px-4', isLarge && 'px-8') // isLarge면 px-8만 남음
외부에서 받은 className prop은 항상 마지막에 둬서 오버라이드 가능하게.
<div className={cn('base-styles', className)} />
className prop을 cn 왼쪽에 배치 (override 불가)cn 전환Ballog entity 슬라이스 생성 템플릿. ky API 그룹, query-key-factory 등록, query/mutation 훅 네이밍과 invalidation 규칙. /feat-new 가 참조.
Ballog(apps/web) FSD 레이어 규칙. 의존 방향, public API, import 순서, 네이밍. 파일 생성/리뷰 시 경계 위반 검증에 사용.
Ballog MSW handler/data 생성 템플릿과 handlers.ts 레지스트리 삽입 규칙. /feat-new 가 참조.
Ballog 커밋 및 PR 메시지 컨벤션. 이모지 prefix(✨Feat/💄Style/✏️Fix)와 fix:/feat: 간결 스타일 혼용 규칙, 한국어 PR 본문 작성 틀. /review-pr 이 참조.
/feat-new 가 읽는 Ballog API 명세 MD의 YAML 스키마 정의. endpoints/types/msw/figma 필드와 작성 규칙. spec 파일 작성이나 파싱할 때 참조.