This repository was archived by the owner on Feb 5, 2026. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathQUICKREF.txt
More file actions
123 lines (112 loc) · 12.6 KB
/
Copy pathQUICKREF.txt
File metadata and controls
123 lines (112 loc) · 12.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
╔════════════════════════════════════════════════════════════════════════════╗
║ VIETNAMESE LUNAR CALENDAR EXPERT ENGINE ║
║ Quick Reference Card ║
╚════════════════════════════════════════════════════════════════════════════╝
┌─ COMMANDS ─────────────────────────────────────────────────────────────────┐
│ │
│ node index.js today # Show today with Can Chi │
│ node index.js info 10 2 2024 # Detailed info for Tết 2024 │
│ node index.js show 2024 # All holidays for 2024 │
│ node index.js convert 1 1 2024 lunar # Lunar → Solar │
│ node index.js export-ics 2024 # Export to calendar │
│ ./demo.sh # Run full demo │
│ node engine/test.js # Run tests │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ LIBRARY API ──────────────────────────────────────────────────────────────┐
│ │
│ const { getDayInfo } = require('./engine/index.js'); │
│ const info = getDayInfo(10, 2, 2024); │
│ │
│ info.solar // { day, month, year, dayOfWeek, ... } │
│ info.lunar // { day, month, year, isLeapMonth, ... } │
│ info.jd // Julian Day Number │
│ info.canChi.day // Day Can Chi │
│ info.canChi.month // Month Can Chi │
│ info.canChi.year // Year Can Chi │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ CAN CHI OBJECT ───────────────────────────────────────────────────────────┐
│ │
│ { │
│ canIndex: 0, // 0-9 │
│ chiIndex: 4, // 0-11 │
│ can: "Giáp", // Stem name │
│ chi: "Thìn", // Branch name │
│ full: "Giáp Thìn", // Combined │
│ conGiap: "Thìn (Rồng)", // Zodiac animal │
│ nguHanh: { // Five elements │
│ can: "Mộc", // Stem element │
│ chi: "Thổ" // Branch element │
│ }, │
│ sexagenaryIndex: 40 // Position in 60-cycle │
│ } │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ THIÊN CAN (10 HEAVENLY STEMS) ────────────────────────────────────────────┐
│ │
│ 0: Giáp (Mộc) 1: Ất (Mộc) 2: Bính (Hỏa) 3: Đinh (Hỏa) │
│ 4: Mậu (Thổ) 5: Kỷ (Thổ) 6: Canh (Kim) 7: Tân (Kim) │
│ 8: Nhâm (Thủy) 9: Quý (Thủy) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ ĐỊA CHI (12 EARTHLY BRANCHES) ────────────────────────────────────────────┐
│ │
│ 0: Tý (Chuột) 1: Sửu (Trâu) 2: Dần (Hổ) 3: Mão (Mèo) │
│ 4: Thìn (Rồng) 5: Tỵ (Rắn) 6: Ngọ (Ngựa) 7: Mùi (Dê) │
│ 8: Thân (Khỉ) 9: Dậu (Gà) 10: Tuất (Chó) 11: Hợi (Lợn) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ NGŨ HÀNH (5 ELEMENTS) ────────────────────────────────────────────────────┐
│ │
│ Mộc (Wood) • Hỏa (Fire) • Thổ (Earth) • Kim (Metal) • Thủy (Water) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ FORMULAS ─────────────────────────────────────────────────────────────────┐
│ │
│ Day Can Chi: │
│ Can = (JD + 9) % 10 │
│ Chi = (JD + 1) % 12 │
│ │
│ Year Can Chi: │
│ Can = (lunar_year + 6) % 10 │
│ Chi = (lunar_year + 8) % 12 │
│ │
│ Month Can Chi: │
│ Chi = (lunar_month + 1) % 12 (Month 1 = Dần) │
│ Can = year_stem_table[year_can] + (month - 1) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ FILES ────────────────────────────────────────────────────────────────────┐
│ │
│ engine/index.js - Main API (getDayInfo, formatDayInfo) │
│ engine/types.js - Constants (CAN, CHI, CON_GIAP, NGU_HANH) │
│ engine/canchi.js - Calculations (getDayCanChi, getMonthCanChi, ...) │
│ engine/test.js - Test suite (6 verified reference dates) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ VERIFIED REFERENCE DATES ─────────────────────────────────────────────────┐
│ │
│ 2024-02-10 (Tết 2024) → Giáp Thìn (Year: Giáp Thìn) │
│ 2025-01-29 (Tết 2025) → Mậu Tuất (Year: Ất Tỵ) │
│ 2023-01-22 (Tết 2023) → Canh Thìn (Year: Quý Mão) │
│ 2024-01-01 → Giáp Tý (Year: Quý Mão) │
│ 2000-01-01 (Y2K) → Mậu Ngọ (Year: Kỷ Mão) │
│ │
│ All tests passing ✅ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─ FEATURES ─────────────────────────────────────────────────────────────────┐
│ │
│ ✅ Can Chi (day/month/year) 🔲 24 Solar Terms (Tiết khí) │
│ ✅ Con Giáp (zodiac animals) 🔲 Giờ Hoàng Đạo (hours) │
│ ✅ Ngũ Hành (five elements) 🔲 12 Trực (day officers) │
│ ✅ Sexagenary cycle (60-cycle) 🔲 Nạp Âm (60-element map) │
│ ✅ Solar/Lunar conversion 🔲 28 Star Mansions │
│ ✅ Vietnamese holidays 🔲 Xung/Hợp relations │
│ ✅ Calendar export (ICS/CSV) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
╔════════════════════════════════════════════════════════════════════════════╗
║ Phase 1 Complete ✅ | 489 lines | 6 tests passing | 0 dependencies ║
╚════════════════════════════════════════════════════════════════════════════╝