MING
블로그로 돌아가기

사주팔자 도구 체인 전체 오픈소스 공개: bazi-kit 3종 패키지

AskingMing 팀이 제품을 지탱하는 사주팔자 도구 체인을 전면 오픈소스화했습니다. 계산 엔진 bazi-engine, 이중 언어 용어 DB bazi-terms, React 차트 컴포넌트 bazi-chart. MIT 라이선스.

2026년 9월 7일Ming Team

사주팔자(八字) 제품을 만들 때 가장 어려운 부분은 '어떻게 해석하느냐'가 아니라, 깔끔한 이중 언어 용어 데이터베이스도 쓸 만한 명식 UI도 없다는 점입니다. 대부분의 자료는 중국어뿐이고, 찾을 수 있는 차트 컴포넌트는 모두 특정 계산 엔진에 묶여 있습니다.

AskingMing 개발 중 같은 벽에 부딪혔습니다. 그래서 제품을 지탱하는 전체 도구 체인을 추출하여 MIT 라이선스로 bazi-kit 으로 오픈소스화했습니다. 독립적으로 또는 조합하여 사용할 수 있는 3개의 npm 패키지입니다:

  • bazi-engine — 계산 레이어: 생년월일시·장소·성별을 전달하면 완전한 명식을 반환합니다.
  • bazi-terms — 이중 언어 용어 DB: 천간·지지·십신·납음·신살… 구조화·번역 가능·제로 의존성.
  • bazi-chart — React 차트 컴포넌트: 임의의 명식 데이터를 깔끔한 이중 언어 UI로 렌더링.

의존 관계는 엄격히 단방향: bazi-terms ← bazi-engine / bazi-chart. 렌더러는 엔진에 의존하지 않습니다.

bazi-engine: 출생 데이터에서 완전한 명식까지

체인 중 가장 무거운 레이어입니다. 진태양시·역사적 서머타임·도시 좌표를 정확히 처리하려면 상상 이상의 공수가 필요합니다.

import { computeBazi } from 'bazi-engine';

const result = computeBazi({
  solar: '1990-03-24 09:54',
  gender: 'male',
  location: { city: '광저우' },
});

computeBazi순수 함수입니다: 동일한 입력은 항상 바이트 수준으로 동일한 출력. IO 없음, 전역 상태 없음. 기본적으로 진태양시 보정(Meeus 균시차 공식)을 활성화하고, IANA 타임존 DB로 역사적 서머타임을 처리합니다.

v1 기능: 사주, 십신, 납음, 순/공망, 십이장생, 자좌, 대운, 진태양시, 88개 도시 매핑 내장. 형충회합·신살·오행 점수는 v2 예정.

bazi-terms: 모든 개념을 번역·검색 가능하게

명식 용어는 모두 구조화된 데이터: 십천간 STEMS(10), 십이지지 BRANCHES(12), 오행 ELEMENTS, 십신 TEN_GODS(11), 십이장생 GROWTH_STAGES, 신살 SHEN_SHA(38), 육십갑자 납음 NA_YIN(30음/60조), 형충회합 INTERACTION_TYPES(8), 일반 용어 GENERAL_TERMS(40+).

핵심 함수 translate()절대 예외를 던지지 않습니다. 인식 불가 입력은 그대로 반환하므로 엔진 원시 출력을 안전하게 파이프할 수 있습니다.

bazi-chart: 임의의 명식을 이중 언어로 렌더링

명식 데이터를 <BaziChart /> 에 전달하세요. 입력 형태를 자동 감지하고 정규화하여 렌더링합니다. 사주, 오행 점수 바, 형충회합 패널, 대운 타임라인, 보조 궁위를 완전 렌더링. 스타일은 인라인 전용 — CSS 임포트 불필요, SSR 안전.

자체 엔진이 있으신가요? bazi-chart 가 커뮤니티에서 가장 흔한 두 데이터 형태를 자동 감지하며, 수동 구축 NormalizedChart 도 지원합니다.

설치 및 조합

npm install bazi-engine bazi-chart   # 풀 스택
npm install bazi-chart               # 렌더링만
npm install bazi-terms               # 용어만

모두 ESM+CJS 듀얼 빌드, 완전 TypeScript 타입 선언 포함.

왜 전체 체인을 오픈소스화했는가

많은 사주 프로젝트가 알고리즘이나 UI 중 하나만 오픈소스화합니다. 우리는 3개 레이어를 모두 열었습니다. 각각 독립적인 재사용 가치가 있기 때문입니다.

사주 앱 개발 중? bazi-engine + bazi-chart 로 수개월 인프라 작업 절약. 이미 엔진이 있다? bazi-chart 는 엔진 비의존. 정확한 한중 대역 용어가 필요? bazi-terms 제로 의존성.

AskingMing 소개

bazi-kit 은 AskingMing 에서 오픈소스화된 도구 체인입니다. AI 기반 사주 인사이트·자기성장 제품(지금 보고 계신 이 사이트). 하지만 이 도구들은 이 분야에서 개발하는 누구나 사용할 수 있도록 설계되었습니다.

아직 초기 단계(v0.1.x)이므로 피드백을 진심으로 환영합니다.

이 차트 렌더러가 실제로 어떻게 보이는지 궁금하신가요? 생년월일시를 입력하여 본인의 사주 명식을 바로 생성해보세요: 무료 사주 배판.

GitHub: https://github.com/favkit/bazi-kit · npm: bazi-engine / bazi-terms / bazi-chart

추천 읽을거리

음양오행이란? 사주팔자의 기본 원리 완벽 입문

음양오행이란 무엇인지 기초부터 설명합니다. 음양과 오행의 의미, 상생·상극 순환, 사주 명식에서 어떻게 쓰이는지 입문자를 위해 정리했습니다.

2026년 9월 1일

천간지지란? 사주팔자의 시간 시스템 완벽 정리

천간지지란 무엇일까? 10천간과 12지지가 육십갑자를 이루고 사주팔자를 구성하는 원리를 한 번에 정리합니다.

2026년 8월 25일

사주팔자 대 자미두수: 중국 양대 명리학 체계의 핵심 차이

사주는 오행의 상호작용을 읽고, 자미두수는 십이궁에 별을 배치합니다. 중국의 두 주요 명리학 체계를 명식 구조, 분석 스타일, 어떤 질문에 맞는지를 기준으로 비교합니다.

2026년 8월 17일

사주로 직업과 연애 패턴을 알 수 있을까? 실전 가이드

사주의 십성(十神)은 직업과 관계에서 당신의 핵심 동기를 반영합니다. 각 십성 유형이 업무 스타일, 관계의 필요, 삶의 우선순위를 어떻게 형성하는지 배웁니다.

2026년 7월 20일

좋은 AI 사주 리딩이란? 품질을 판단하는 네 가지 기준

모든 AI 점술 도구가 똑같지 않습니다. AI 사주 리딩이 정말 명식에 기반한 것인지, 아니면 신비로운 언어로 포장한 일반 문구인지 판별하는 방법을 배웁니다.

2026년 7월 18일

사주 별자리 동물띠 궁합 비교: 어떤 궁합법이 가장 유용할까?

사주 궁합, 서양 점성술 시너스트리, 동물띠 궁합을 나란히 비교합니다 — 분석 깊이, 필요 데이터, 실용적 가치를 중심으로.

2026년 7월 15일