DEV Community

Cover image for I built a Khmer Hybrid Calendar package for JavaScript/TypeScript
Heng LOEM
Heng LOEM

Posted on

I built a Khmer Hybrid Calendar package for JavaScript/TypeScript

Hey everyone!

I just released khmer-hybrid-calendar – a library that combines Gregorian and Khmer lunar calendars in one easy-to-use package.

Why I built it:

The Khmer calendar is an important part of Cambodian culture, used to determine holidays, religious observances, and traditional events. However, there weren't many modern, well-maintained libraries for developers to integrate this functionality into their applications. I created this to bridge that gap.

Key features:

✅ Accurate Khmer lunar date conversion with moon phase emojis
✅ Complete list of Cambodian national holidays and Buddhist observances
✅ Support for Chinese lunar festivals (New Year, Mid-Autumn, etc.)
✅ iCal feed generation for any year
✅ Full TypeScript support with bundled declarations
✅ Works in Node.js, browser, and React/Next.js applications

Example use:

typescript

import { KhmerCalendar } from 'khmer-hybrid-calendar';

const calendar = new KhmerCalendar();
const khmerDate = calendar.gregorianToKhmer(2026, 4, 13);
console.log(khmerDate.lunarDay); // "១៥កើត"
Enter fullscreen mode Exit fullscreen mode

I'd love to hear your feedback, ideas, or any questions you have!

🔗 GitHub: https://github.com/hengloem/khmer-hybrid-calendar-package
📦 npm: https://www.npmjs.com/package/khmer-hybrid-calendar

opensource #javascript #khmer #calendar

Top comments (0)