Configuration
seed-design.json 설정을 안내해요.
seed-design.json 만들기
seed-design.json 파일은 CLI로 생성하거나 직접 추가할 수 있어요.
기본 형태
seed-design.json은 엄격하게 파싱돼요. 문서에 없는 키를 임의로 추가하면 CLI 실행 시 오류가 날 수 있어요.
옵션 한눈에 보기
| 옵션 | 타입 | 기본값 | 설명 |
|---|---|---|---|
path | string | 없음 (init에서는 ./seed-design) | 스니펫이 생성될 루트 경로 |
rsc | boolean | false | React Server Components 사용 여부에 맞춰 "use client" 유지/제거 |
tsx | boolean | true | 생성 파일을 TypeScript(.ts/.tsx) 또는 JavaScript(.js/.jsx)로 변환 |
framework | "react" | "lynx" | "react" | 스니펫 대상 프레임워크. init 시 자동 감지 |
telemetry | boolean | true | 익명 사용 데이터 수집 여부 |
$schema | string | 선택값 | JSON 스키마 힌트용 필드 (CLI 동작에는 영향 없음) |
path
path는 스니펫이 생성되는 루트 디렉토리예요.
add/add-all 실행 시 파일은 path 아래에 레지스트리 ID와 스니펫 내부 경로 기준으로 생성돼요.
고정된 폴더 구조가 아니라, 선택한 항목에 따라 구조가 달라져요.
rsc
React Server Components를 사용할지 설정해요.
스니펫에 이미 있는 "use client" directive를 유지할지 결정해요.
true:"use client"를 유지해요.false: 파일 최상단의"use client"를 제거해요.
tsx
TypeScript를 사용할지 설정해요.
false로 설정하면 .ts/.tsx 파일이 .js/.jsx로 변환돼요.
framework
스니펫 대상 프레임워크를 설정해요.
init 실행 시 프로젝트의 package.json에 @lynx-js/react 또는 @seed-design/lynx-react가 있으면 "lynx"로 자동 감지돼요.
"react":@seed-design/react,@seed-design/css기반 스니펫을 사용해요."lynx":@seed-design/lynx-react,@seed-design/lynx-css기반 스니펫을 사용해요.
CLI 명령어에서 --framework 옵션으로 이 값을 일시적으로 덮어쓸 수 있어요.
telemetry
텔레메트리 데이터 수집 여부를 설정해요.
SEED CLI는 개선을 위해 익명 사용 데이터를 수집해요. 프로젝트 경로, 파일 내용, 소스 코드는 수집하지 않아요.
우선순위
아래 순서로 텔레메트리 활성화 여부를 판단해요.
DISABLE_TELEMETRY=true환경 변수SEED_DISABLE_TELEMETRY=true환경 변수seed-design.json의telemetry- 기본값
true
수집되는 데이터 예시
- 실행 이벤트:
init,add,add-all,compat - 실행 통계: 실행 시간(
duration_ms), 추가된 항목 수 - 설정 정보:
tsx,rsc,include_deprecated,yes_option등
수집되지 않는 데이터
- 프로젝트 경로, 생성된 파일 경로
- 스니펫 파일 내용
- 소스 코드
- 개인 식별 정보
비활성화 방법
1. seed-design.json 설정
2. 환경 변수 설정
$schema
$schema는 선택적으로 추가할 수 있는 문자열 필드예요.
현재 CLI 동작에는 영향을 주지 않고, 에디터의 JSON 자동완성/검증 용도로만 사용할 수 있어요.
Last updated on