CLI
v0.1.3소스 파일을 프로젝트에 복사하여 컴포넌트를 추가합니다. 내부 로직과 구조까지 직접 수정할 수 있습니다.
초기화
토큰, Tailwind, cn() 유틸리티 셋업
컴포넌트 추가
.tsx 소스 파일을 프로젝트에 복사
자동 의존성 해결
Radix UI와 내부 의존성을 자동 설치
TypeScript 프로젝트가 필요합니다 (tsconfig.json). CLI는 .tsx 파일만 출력합니다.
Quick Start
npx 7onic init
npx 7onic add button card inputnpx 7onic init
프로젝트에서 7onic을 초기화합니다. Tailwind 버전을 감지하고, 기본 의존성을 설치하고, 설정을 생성합니다.
npx 7onic init수행 내용
Tailwind 버전 감지 (tailwind.config.* 있으면 → v3, CSS 설정만 → v4)
패키지 매니저 감지 (npm / pnpm / yarn / bun)
기본 의존성 설치 (@7onic-ui/tokens, clsx, tailwind-merge, cva)
CSS 파일에 토큰 import 추가
cn() 유틸리티 함수 생성
7onic.json 설정 파일 생성
npx 7onic add
컴포넌트 소스 파일을 프로젝트에 복사합니다. 의존성은 자동으로 해결됩니다.
npx 7onic add button
npx 7onic add button card input modal
npx 7onic add --alltoast루트 레이아웃에 Toaster를 추가하세요
// app/layout.tsx
<body>
{children}
<Toaster />
</body>tooltip앱을 Tooltip.Provider로 감싸세요
// app/layout.tsx
<Tooltip.Provider>
{children}
</Tooltip.Provider>7onic.json
init으로 생성됩니다. 컴포넌트 배치 위치와 Tailwind 설정을 제어합니다.
{
"$schema": "https://7onic.design/schema/7onic.json",
"tailwind": {
"version": 4,
"css": "src/app/globals.css"
},
"aliases": {
"components": "@/components/ui",
"utils": "@/lib/utils"
}
}tailwind.version3 | 4Tailwind CSS 버전 (3 또는 4)
tailwind.configtailwind.config.tsTailwind v3 설정 파일 경로 (v4에서는 불필요)
tailwind.csssrc/app/globals.css토큰 import용 메인 CSS 파일
aliases.components@/components/ui컴포넌트가 복사되는 위치
aliases.utils@/lib/utilscn() 유틸리티 위치
Available Components
npx 7onic add --all로 모든 컴포넌트를 한꺼번에 추가할 수 있습니다.
accordionalertavatarbadgebreadcrumbbuttonbutton-groupcardchartcheckboxdividerdrawerdropdownicon-buttoninputmetric-cardmodalnavigation-menupaginationpopoverprogressradio-groupsegmentedselectskeletonsliderspinnerswitchtabletabstextareatoasttoggletoggle-grouptooltip차트 별칭: bar-chart, line-chart, area-chart, pie-chart는 모두 chart로 해석됩니다.
Dependency Resolution
컴포넌트가 다른 컴포넌트에 의존하면 둘 다 자동으로 복사됩니다.
add buttonbutton+button-groupadd button-groupbutton-group+buttonadd icon-buttonicon-button+button+button-groupadd inputinput+fieldadd chartchart(bar / line / area / pie)add pie-chartchart(alias)add cardcardFlags
--tailwind v3|v4init의 Tailwind 버전 지정 (기본: 자동 감지)--all모든 컴포넌트 추가 (recharts 옵트아웃 프롬프트)--yes, -y확인 프롬프트 건너뛰기 (기본값 사용)--overwrite기존 파일 덮어쓰기npm vs CLI
npm install @7onic-ui/react- ✓ 셋업 없이 바로 import해서 사용
- ✓ npm으로 자동 업데이트
- ✓ 컴포넌트를 그대로 사용할 때 최적
npx 7onic add button- ✓ 소스 코드를 완전히 소유
- ✓ 내부 로직, Props, 구조를 자유롭게 변경
- ✓ 컴포넌트 동작 자체를 변경해야 할 때 최적