i18n, google sheet로 국제화 자동화하기

뱀기·2023년 6월 27일
0

Nurihaus

목록 보기
10/13

요약

  • i18n으로 국제화를 하고 관련 소스를 구글 스프레트 시트에서 관리할 수 있도록한다!

배경

  • 서비스가 국제화되면서 다양한 언어를 지원하게 되었다.
  • 키를 통해 json파일로 관리해도 되지만 협업을 통해 좀 더 편리하게 asset을 관리하고 싶었음!
  • 업무가 개발쪽에서 번역이 주가 될 것이 아니기 때문에 아무래도 그걸 다시 json으로 옮기는 수작업 단계를 생략하고 싶었음!

사용한 라이브러리

목표

  • 각 스프레드 시트 파일에 페이지 별로 시트를 만들어 관리한다.
  • asset을 다운로드 받으면 페이지별 json을 받을 수 있다.
  • 변경될 수 있는 페이지별 시트를 쉽게 관리할 수 있도록 한다.

세팅방법

  • 라이브러리 설치
npm install i18next
npm install -D i18next-scanner
npm install -D google-spreadsheet
  • google-spreadsheet api 세팅

참고 자료가 많으니 적당한걸로 하나 찾아보자

  • package.json 설정
{
  "scan:i18n": "i18next-scanner --config i18next-scanner.config.js",
  "upload:i18n": "npm run scan:i18n && node translate/upload.js",
  "download:i18n": "node translate/download.js",
}
  • gitignore 설정
asset, credential 관련 ignore 설정 필수!
  • i18next-scanner.config.js 세팅

  • i18next.config.js 세팅

  • download.js, upload.js 세팅

    https://meetup.nhncloud.com/posts/295
    참고해서 변형하여 세팅함. 필요한 방식으로 만들면 되겠다!

  • 세팅하고 잘 작동하느지 확인하면 끝난다.

  • build 시에 npm run download:i18n 추가하기

  • 끝.

0개의 댓글