본문으로 건너뛰기

빠른 시작

60초 안에 첫 번째 로케일 파일을 번역해 보세요.

1. 로케일 파일 설정하기

소스 로케일 파일을 생성하세요. Champollion은 JSON, TOML, YAML을 지원해요:

locales/en.json
{
"hero": {
"title": "Welcome to our platform",
"subtitle": "Build something amazing"
},
"nav": {
"home": "Home",
"about": "About",
"contact": "Contact"
}
}

2. API 키 설정하기

제공업체를 선택하고 키를 설정하세요:

# Option A: OpenRouter (200+ models, recommended)
export OPENROUTER_API_KEY=sk-or-v1-...

# Option B: Gemini (free tier — zero cost to start)
export GEMINI_API_KEY=AI...

aistudio.google.com/apikey에서 무료 Gemini 키를 받을 수 있어요. OpenRouter 키는 openrouter.ai에서 받을 수 있어요.

3. Sync 실행하기

npx champollion sync

:::tip Gemini를 사용하시나요? 옵션 B(Gemini)를 선택했다면 --method gemini를 추가하세요:

npx champollion sync --method gemini

:::

Champollion은 다음을 수행해요:

  1. locales/en.json를 소스로 자동 감지
  2. 대상 언어를 찾기(또는 입력 요청)
  3. 모든 키 번역
  4. locales/fr.json, locales/ja.json 등을 작성
  5. 번역된 내용을 추적하기 위한 .champollion.lock 생성

4. 결과 확인하기

cat locales/fr.json
{
"hero": {
"title": "Bienvenue sur notre plateforme",
"subtitle": "Construisez quelque chose d'incroyable"
},
"nav": {
"home": "Accueil",
"about": "À propos",
"contact": "Contact"
}
}

그다음에는 어떻게 되나요?

소스 문자열을 변경하면 champollion이 SHA-256 해시 추적을 통해 변경 사항을 감지하고, 다음 sync에서 해당 키만 다시 번역해요:

locales/en.json (updated)
{
"hero": {
"title": "Welcome to Acme Platform", // ← changed
"subtitle": "Build something amazing" // ← unchanged, skipped
}
}
npx champollion sync
# Only "hero.title" is re-translated across all locales

변경되지 않은 키(hero.subtitle)는 champollion의 Translation Memory 캐시에서 제공돼요 — API 호출도, 비용도 없어요. 이 캐시는 모든 sync 중에 자동으로 생성되며 .champollion/tm.json에 저장돼요.

선택 사항: 설정 파일 생성하기

더 세밀한 제어를 원한다면 설정 파일을 생성하세요:

npx champollion init # guided wizard
npx champollion init --yes --langs fr,de,ja # quick setup with specific targets

가이드 마법사는 각 언어의 register presets를 단계별로 안내해요 — 해당 언어의 언어 체계에 맞춰 사전 구축된 어조/격식 지침이에요. 프랑스어에는 T-V 프리셋(vouvoiement vs tutoiement)이, 한국어에는 화계(해요체 vs 합쇼체 vs 해체)가, 일본어에는 경어(です/ます vs 丁寧語) 옵션이 있어요.

또는 프리셋 키를 사용해 설정을 수동으로 생성할 수도 있어요:

champollion.config.json
{
"version": 3,
"inputLocale": "en",
"localesDir": "./locales",
"languages": {
"fr": "casual-tu",
"ko": "polite-haeyo",
"ja": "polite"
},
"model": "google/gemini-2.5-flash"
}

각 언어에 사용 가능한 프리셋을 둘러보려면 npx champollion init를 실행하세요.

선택 사항: Watch 모드

소스 파일이 변경되면 자동으로 번역해요:

npx champollion watch

다음 단계