한국 띠에 서양 별자리 추가하니 영어권 사용자가 들어오다
목차
서양 별자리(sun sign)와 한국 띠를 함께 보여주는 카드를 만들었다. 처음엔 국내 사용자 중심이었지만, 영어권 진입점을 열기 위해 이 기능을 추가했다. 단순 번역이 아니라 문화권별로 다른 "별자리 해석"을 동시 지원하는 구조다.
왜 이걸 먼저 했나
우리 서비스의 핵심은 "프로필 카드"인데, 초기엔 한국 띠만 지원했다. 국내 사용자 입장에선 충분했지만, 글로벌 확대를 고민하면서 한 가지 문제가 보였다. 해외 사용자(특히 영어권)는 "한국 띠"라는 개념 자체가 생소하고, 자신의 별자리(Western zodiac)를 기대한다.
그런데 단순히 "영어 번역"만 하면 안 됐다. 띠는 띠대로, 별자리는 별자리대로 별도의 문화적 맥락이 있기 때문이다. 한국 사용자는 "2024년 용띠"를 자랑하고, 서양권 사용자는 "사자자리(Leo)"를 보고 싶어 한다. 둘을 강제로 통일할 수 없었다.
그래서 결정한 게 병렬 지원이다. 같은 카드에 둘 다 표시하되, 사용자가 이해하기 쉬운 형태로.
파일 구조와 역할
변경한 두 파일의 관계를 정리하면:
| 파일 | 역할 | 이번 변경의 의미 |
|---|---|---|
src/lib/zodiac.ts |
별자리 로직 계산 | 기존 한국 띠 계산에 서양 별자리 알고리즘 추가 |
src/app/r/[uid]/page.tsx |
카드 UI 렌더링 | 두 별자리 정보를 모두 렌더링하는 후킹 요소 추가 |
zodiac.ts는 순수 로직 레이어다. 생년월일 → 띠 / 별자리 문자열 변환이 여기서 일어난다. 기존엔:
생년월일 → (한국 음력 변환) → 띠명("용", "호랑이" 등)
이제 병렬로:
생년월일 → (한국 음력) → 띠명
→ (양력 월일) → 별자리명 (Aries, Taurus, … Pisces)
두 알고리즘이 독립적이라 각각 테스트하고 수정할 수 있게 됐다.
page.tsx는 프리젠테이션이다. 띠 정보만 받아서 보여주던 것을, 이제 별자리도 함께 받는다. 카드 디자인 상 "후킹" 포인트가 생겼다. 서양권 사용자가 접속했을 때 "어? 내 별자리도 있네?" 하는 유의미한 발견 경험이 생기는 거다.
기술적으로 배운 점
이 작업을 하면서 느낀 건, 문화권 다중 지원이 생각보다 복잡하다는 것이다.
첫 실수가 뭐였냐면, 처음엔 "별자리 이름을 한국어로 번역해서 보여주면 되겠다"는 생각이었다. 그런데 그러면 국내 사용자는 또 헷갈린다. "별자리는 뭐지?" 하면서 느낌표 하나로는 설명이 안 된다.
결국 둘 다 기본 원명으로(띠는 한국식, 별자리는 영어식) 표시하고, 사용자의 인터페이스 언어에 따라 설명만 다르게 주는 식으로 처리했다.
또 하나 배운 게, 초기 설계의 확장성이 얼마나 중요한지다. zodiac.ts를 처음 만들 때 "한국 띠만 있으면 되지"라고 가정했다면, 이번 추가 때 구조를 크게 뜯어고쳐야 했을 것이다. 다행히 calculateZodiac(birthDate) 같은 형태로 독립적인 함수들로 설계되어 있어서, "별자리 계산 함수 추가"로 깔끔하게 마무리할 수 있었다.
앞으로의 고민
이 패턴이 성공하면, 다른 문화권도 고려해야 할 것 같다. 예를 들어 중국 사주(황도 12궁), 인도 점성술(나박샤) 같은 걸 지원할 경우를 생각해보면, 각각을 또 zodiac.ts에 추가해야 한다. 지금 구조면 충분히 확장 가능하다.
다만 카드 UI 상 "너무 많은 정보를 한 번에 보여줄 순 없다"는 제약이 생길 것 같다. 그럼 "탭" 이나 "토글" 같은 UX를 고려해야 하는데, 그건 또 다른 얘기다. 일단 현재는 "영어권 진입점 확보"가 목표였고, 그걸 이 카드로 충분히 만족시킬 수 있을 거라고 판단했다.
🛒 이 글과 어울리는 추천 상품
*위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.
댓글 0
첫 댓글 달아줘.