Về LichTa

Vì sao LichTa tồn tại, và cách nó được xây dựng.

Giới thiệu

LichTa là một thư viện TypeScript mạnh mẽ giúp chuyển đổi qua lại giữa Dương Lịch và Âm Lịch (Việt Nam). Thư viện được thiết kế tối ưu, có kiểu dữ liệu đầy đủ (strongly typed), 0 dependency ở phần lõi, và cung cấp các module tích hợp sẵn cho các framework UI phổ biến (React, Vue, Svelte) cũng như các thư viện lịch (FullCalendar, EventCalendar, React Big Calendar).

Thuật toán chuyển đổi dựa trên công trình của Hồ Ngọc Đức (Đại học Leipzig), chuẩn de facto cho âm lịch Việt Nam trong lập trình, hỗ trợ phạm vi năm 1800 – 2199.

Nguồn gốc thuật toán

Lịch âm Việt Nam được tính dựa trên vị trí thực của Mặt Trăng và Mặt Trời (âm dương lịch), không có công thức đại số đơn giản như lịch dương — mọi phép tính đều cần qua các bước thiên văn: tìm Julian Day Number, xác định Điểm Sóc (New Moon), tính Kinh độ Mặt Trời để xác định Tiết Khí và tháng nhuận.

LichTa cài đặt lại thuật toán do Hồ Ngọc Đức công bố (dựa trên các công thức thiên văn trong "Astronomical Algorithms" của Jean Meeus, 1998) — đây là thuật toán được dùng rộng rãi nhất cho lịch âm Việt Nam trong giới lập trình suốt nhiều năm qua.

Thuật toán được kiểm chứng bằng bộ test hồi quy cho các năm nhuận đã biết (ví dụ 2020, 2023, 2025), đảm bảo độ chính xác qua thời gian.

Hệ sinh thái package

LichTa được tổ chức theo dạng monorepo — chia nhỏ thành nhiều package độc lập dưới scope @lichta/*, để bạn chỉ cần cài đúng phần mình dùng.

  • @lichta/coreThuật toán lõi Solar ↔ Lunar, Can Chi, Ngũ Hành, format — thuần TypeScript, 0 dependency.
  • @lichta/reactComponent Calendar cho React.
  • @lichta/vueComponent Calendar cho Vue 3.
  • @lichta/svelteComponent Calendar/Formatter cho Svelte 5, re-export toàn bộ @lichta/core.
  • @lichta/full-calendarAdapter tiêm ngày âm lịch vào FullCalendar.
  • @lichta/event-calendarAdapter tiêm ngày âm lịch vào EventCalendar.
  • @lichta/react-big-calendarAdapter tiêm ngày âm lịch vào React Big Calendar.

Đội ngũ & Giấy phép

LichTa được phát triển và duy trì bởi Zeforc Labs.

Thư viện phát hành theo giấy phép MIT — miễn phí sử dụng cho cả dự án cá nhân lẫn thương mại.

Bắt đầu dùng thử

Xem hướng dẫn cài đặt chi tiết và ví dụ sử dụng trong trang Tài liệu, hoặc thử ngay bản xem trước (demo) ở trang chủ.