앱을 출시할 때마다 가장 귀찮았던 게 릴리즈 노트 번역이었다. KOOTD를 출시할 때 한국어, 영어, 일본어로 각각 번역해야 했는데, 매번 번역기 사이트에서 하나씩 번역하고 형식에 맞게 복사 붙여넣기 하는 게 너무 번거로웠다.
왜 만들었나?
처음에는 그냥 참고 견디고 있었는데, 앱 업데이트할 때마다 똑같은 작업을 반복하는 게 너무 비효율적이었다.
다른 릴리즈 노트 생성기들도 찾아봤는데 대부분 로그인해야 하거나 무료 할당량이 제한적이었다. 그냥 내가 직접 만드는 게 나을 것 같았다.
어떻게 만들었나?
1단계: 기본 번역 기능
먼저 Google 번역 API를 사용해서 번역 기능부터 만들었다. 클라이언트에서 직접 호출하면 CORS 에러가 나서 Next.js API Route를 만들어서 서버에서 번역하도록 했다.
// pages/api/translate.js
export default async function handler(req, res) {
const { text, targetLang } = req.body;
try {
const result = await translate(text, { to: targetLang });
res.status(200).json({ success: true, translatedText: result.text });
} catch (error) {
res.status(500).json({ success: false, error: error.message });
}
}
2단계: 스토어별 형식 지원
구글 플레이스토어와 앱스토어 형식이 달라서 둘 다 지원해야 했다.
구글 플레이스토어는 <ko-KR>내용</ko-KR> 형식이고, 앱스토어는 각 언어별로 따로 입력해야 한다.
// 구글 플레이스토어 형식
const generateGoogleFormat = (translations) => {
let formatted = '';
for (const [lang, text] of Object.entries(translations)) {
const playStoreLang = getPlayStoreLanguageCode(lang);
formatted += `<${playStoreLang}>\n${text}\n</${playStoreLang}>\n`;
}
return formatted;
};
3단계: UI 개선
처음에는 기능만 만들었는데, 사용해보니 UI가 너무 불편했다.
언어 선택을 그룹별로 나누고, 진행률 바를 넣고, 각 언어별로 개별 복사 버튼을 추가했다. 고정 텍스트 기능도 넣어서 버전 정보 같은 건 번역하지 않고 각 언어 앞에 붙일 수 있게 했다.
실제 사용해보니
번역 품질
구글 번역을 사용하는데 생각보다 괜찮습니다. 간단한 문장은 잘 번역되고, 복잡한 문장은 가끔 이상하게 나옵니다. 하지만 앱 릴리즈 노트 정도는 대부분 괜찮게 나옵니다.
사용법
한국어 또는 사용자의 주 언어로 릴리즈 노트를 쓰고, 번역할 언어들을 선택한 다음 번역 버튼을 누르면 됩니다. 결과가 나오면 각 언어별로 복사해서 각 스토어에 붙여넣기 합니다.
시간 절약
기존에는 하나씩 번역하느라 10-15분 걸렸는데, 이제는 2-3분이면 끝납니다. 특히 여러 언어로 번역할 때 효과가 큽니다.
앞으로 개선할 점
번역 품질 개선
AI 번역 서비스를 추가로 연동해서 번역 품질을 높일까 생각 중입니다. 또는 사용자가 번역 결과를 수정할 수 있는 기능을 추가할 수도 있습니다.
더 많은 언어 지원
현재 지원하지 않는 언어들도 추가하고 싶습니다.
템플릿 기능
자주 사용하는 릴리즈 노트 템플릿을 저장할 수 있는 기능을 추가하면 좋을 것 같습니다. 근데 이러려면 백엔드를 연결해야하는데 그럼 유지비에 10달러가 더 들텐데..
마무리
처음에는 그냥 귀찮아서 만든 도구였는데, 실제로 사용해보니 생각보다 유용합니다. 앱 출시할 때마다 쓰고 있고, 시간도 많이 절약됩니다.
아직 완벽하지는 않지만, 앞으로 계속 개선해나가면서 더 좋은 도구로 만들어가고 싶습니다.
여러가지로 사람들이 실제로 사용하는 도구들을 만들어보고 있는데, 아무쪼록 트래픽이 증가하여 수익화까지 이어지는걸 바래봅니다.
Release Note Generator를 직접 사용해보고 싶다면 릴리즈 노트 생성기를 확인해보세요.