用於紫微斗數排盤的 JavaScript 開源庫,有以下功能:
輸入
生日(陽曆或農曆皆可)
性別
可以實現下列功能
紫微斗數 12 宮的星盤數據
取得宮位產生的四化宮位
其他
多語言輸入/輸出
輸入的時候支持多個國家和地區語言混合輸入,可以輸出指定語言。目前支持:簡體中文,繁體中文,英文,日文,韓文,越南語。英文的翻譯目前還沒有標準,所以我大多是意譯的,但也正因為如此,可能英文版本的會更加易懂。如果有精通星象翻譯的歡迎提 PR 。任何語言都可以。
鏈式調用
假如你想判斷 紫微星 的 三方四正 有沒有 化忌,你可以這樣做
```ts import { astro } from 'iztro';
const astrolabe = astro.bySolar('2000-8-16', 2, '男', true, 'zh-CN');
astrolabe.star('紫微').surroundedPalaces().haveMutagen('忌'); ```
配置和插件
紫微斗數流派眾多,不同的流派的四化以及星耀亮度都會有些許差異,為了滿足不同流派的需求和功能的擴展,iztro 在 v2.3.0 版本加入了全局配置和第三方插件功能。 詳見 配置文檔。
[!IMPORTANT] 如果你在開發中遇到任何問題,可以添加作者微信咨詢。
你也可以任意魔改代碼,或聯繫作者獲取技術支持。
若您不想自己動手寫程式,只想直接查看 iztro 的排盤結果,歡迎直接使用 紫微派(ziwei.pub) 的線上排盤服務。
你可以使用任何你熟悉的包管理庫來安裝 iztro。
# npm
npm install iztro -S
# yarn
yarn add iztro
# pnpm
pnpm install iztro -S
假如你使用的是靜態 HTML 文件,可以下載 release 資源文件中的 iztro-min-js.tar.gz 壓縮包,裏面包含了一個 iztro 壓縮混淆過的 js 文件和對應的 sourcemap 文件。
v2.0.4+版本才提供獨立 js 庫。
將 iztro.min.js 用 script 標簽引入 HTML 文件使用。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>iztro-紫微鬥數開源庫</title>
</head>
<body>
<script src="https://github.com/SylarLong/iztro/raw/2.5.8/iztro.min.js"></script>
<script>
// 獲取一張星盤數據
var astrolabe = iztro.astro.bySolar('2000-8-16', 2, '男', true, 'zh-CN');
</script>
</body>
</html>
當然,我們更推薦你直接使用 CDN 加速鏈接,你可以在下面列表中選擇一個,在沒有指定版本號的時候,會自動指向最新版本的代碼庫
jsdelivr
https://cdn.jsdelivr.net/npm/iztro/dist/iztro.min.js
https://cdn.jsdelivr.net/npm/iztro@2.0.5/dist/iztro.min.js
unpkg
https://unpkg.com/iztro/dist/iztro.min.js
你也可以使用如下規則來指定版本:
iztro@2iztro@^2.0.5iztro@2.0.5因為純 JS 庫沒有代碼提示和註釋,所以在集成的時候請參閱 iztro 開發文檔。
這裏是一個簡單的例子顯示如何調用 iztro 獲取到紫微斗數星盤數據,詳細文檔請移步 開發文檔
```ts import { astro } from 'iztro';
// 通過陽歷獲取星盤信息 const astrolabe = astro.bySolar('2000-8-16', 2, '女', true, 'zh-CN');
// 通過農歷獲取星盤信息 const astrolabe = astro.byLunar('2000-7-17', 2, '女', false, true, 'zh-CN'); ```
```ts var iztro = require('iztro');
// 通過陽歷獲取星盤信息 var astrolabe = iztro.astro.bySolar('2000-8-16', 2, '女', true, 'zh-CN');
// 通過農歷獲取星盤信息 var astrolabe = iztro.astro.byLunar('2000-7-17', 2, '女', false, true, 'zh-CN'); ```
如果你對 iztro 有興趣,也想加入貢獻隊伍,我們非常歡迎,你可以用以下方式進行:
功能需求。BUG 報告。fork 到你自己的倉庫進行編輯,然後提交PR到本倉庫。fork 本倉庫,然後在 locales 文件夾下創建一個國際化語言文件,然後複製其他語言文件目錄裡面的文件到你的目錄下進行更改。[!NOTE] 在開始之前,請先閱讀 貢獻指南。
使用本程式返回的數據,你可以生成這樣一張星盤,當然這只是一個例子,你可以把注意力集中在星盤的設計上,也可以把重心放在數據的分析上,本程式為你解決了最繁冗的工作,讓你可以把精力更多的放在你所需要關注的事情上面。

[!IMPORTANT] 如果你覺得代碼對你有用,請點 ⭐ 支持,你的 ⭐ 是我持續更新的動力~
<img alt="Star History Chart" src="https://api.star-history.com/svg?repos=sylarlong/iztro&type=Date" />
Copyright © 2023 All Contributors
[!NOTE] 請合理使用本開源代碼,禁止用於非法目的。
$ claude mcp add iztro \
-- python -m otcore.mcp_server <graph>