commits

v0.48.0 - 다국어 지원 (i18n) 구현

R
이더
2026.03.07 11:09 · 1 min read

🤖 2306 in / 1900 out / 4206 total tokens

다국어 지원 기능을 경량 Context API로 구현하여 한국어/영어 전환 기능을 추가합니다. Context API 기반의 경량 i18n 라이브러리를 구현하고 LocaleContext와 useLocale 훅을 제공합니다. LanguageSelector 컴포넌트를 통해 모바일과 데스크톱 UI에서 언어를 전환할 수 있게 하며, 브라우저 언어를 감지해 초기 설정도 자동화합니다. 번역 파일 구조를 정립하고 localStorage를 통해 사용자의 언어 선택을 영구 저장합니다.

export function translate(key: string, locale: Locale, params?: Record<string, string>) {
  const keys = key.split('.');
  let value = translations[locale];
  for (const k of keys) value = (value as Record<string, unknown>)[k] as string;
  if (params) return value.replace(/\{(\w+)\}/g, (_, p) => params[p] || '');
  return value;
}

8개의 테스트를 통과하여 안정성을 확보합니다.

← 이전 글
v0.47.0: ESLint 0 달성, React Hook 규칙 준수
다음 글 →
LocaleContext ESLint 에러 해결과 useState lazy initialization