flutter_khmer_chankitec 0.1.0 copy "flutter_khmer_chankitec: ^0.1.0" to clipboard
flutter_khmer_chankitec: ^0.1.0 copied to clipboard

A Flutter plugin for Khmer lunar calendar (Chhankitek/ចន្ទគតិ) calculations. Convert Gregorian dates to Khmer lunar dates with full support for Buddhist calendar features including Sila days detection.

Changelog #

0.1.0 - 2026-01-10 #

Added - English & Bilingual Support 🌍 #

  • Added English language support for all date components
  • Added toStringEn() method for full English date output
  • Added formatEn(pattern) method for custom English formatting
  • Added English getters:
    • dayOfWeekEn - Day of week in English (Sunday, Monday, ...)
    • dayOfWeekShort - Short Khmer day name
    • dayOfWeekShortEn - Short English day name (Sun, Mon, ...)
    • lunarMonthEn - Lunar month in English (Migasir, Boss, ...)
    • lunarMonthIndex - Lunar month index (0-13)
    • lunarZodiacEn - Zodiac animal in English (Rat, Ox, Dragon, ...)
    • lunarEraEn - Era name in English (Chor Sak, Aek Sak, ...)
    • shortLunarDayEn - Lunar day in English (10 Waxing, 15 Waning, ...)
    • solarDateEn - Solar date in English (8 January 2025)
  • Added numeric getters:
    • lunarYearInt - Buddhist Era year as integer
    • solarYearInt - Solar year as integer
    • solarDayInt - Solar day as integer
    • lunarDay.moonCountEn - Day number as integer
  • Added fromKhmerNumber() utility to convert Khmer numerals to integers
  • Added comprehensive reference tables in README for:
    • Lunar Month Indices (0-13)
    • Days of Week (full & short, Khmer & English)
    • Animal Years / Zodiac (12-year cycle with emojis)
    • Era Years / Sak (10-year cycle)

Enhanced #

  • Enhanced KhmerConstants with English translations for all constants
  • Enhanced KhmerNumberUtils with bidirectional conversion methods
  • Enhanced LunarDay with English output methods

Documentation #

  • Updated README with bilingual examples (Khmer & English)
  • Added quick reference tables for easy lookup
  • Added usage examples for all new features

0.0.9 - 2026-01-10 #

Fixed #

  • Fixed isSilaDay logic to accurately detect end-of-month holy days by checking the next lunar day.

Removed #

  • Removed isNewMoon property as it was not consistent with the reference implementation.

0.0.8 - 2026-01-10 #

Added #

  • Added Chhankitek.getKhmerNewYear(int year) to get the exact New Year (Moha Songkran) time.
  • Added Chhankitek.getNewYearDuration(int year) to get duration of New Year (3 or 4 days).
  • Added format(String pattern) method to KhmerLunarDate for custom date formatting.

Changed #

  • Refactored internal comments to be cleaner.

0.0.6 - 2026-01-10 #

Documentation #

  • Updated README with simplified, Khmer-friendly examples.
  • Added dedicated section for property definitions and helper methods.

0.0.5 - 2026-01-08 #

Added #

  • Ported robust astronomical calculation logic from momentkh for higher precision.
  • Precise Moha Songkran (Khmer New Year) and Lerng Sak transition logic.
  • Accurate Buddhist Era (BE) transition at Visakha Bochea.
  • Enhanced animal zodiac and era (Sak) switching logic.
  • Comprehensive unit tests for edge cases and calendar transitions.

Changed #

  • Internal logic refactored to use Julian Day Number (JDN) for better stability and range.
  • Updated README with proper credits and updated API information.

0.0.4 - 2026-01-05 #

Added #

  • Added shortLunarDay getter with space formatting (e.g., "១ កើត", "១៥ រោច")
  • Added shortLunarDayCompact getter without space formatting (e.g., "១កើត", "១៥រោច")
  • Added compact property to LunarDay class for compact format

Changed #

  • Updated default toString() format to include space between number and phase
  • Improved readability of lunar day display
  • Updated example app to demonstrate both formatting options

0.0.3 - 2026-01-05 #

Added #

  • Exported KhmerNumberUtils class for public use
  • Added comprehensive example app demonstrating all features
  • Added toKhmerNumber() function for converting integers to Khmer numerals
  • Added getDayOfWeekInKhmer() function
  • Added getSolarMonthKh() function
  • Enhanced README with complete API documentation
  • Added publishing guide (PUBLISHING_GUIDE.md)

Changed #

  • Updated example app with detailed feature demonstrations
  • Improved documentation with all available functions and constants

0.0.2 - 2026-01-04 #

Changed #

  • Shortened and cleaned up README
  • Moved donation section to top of README
  • Added pub.dev badge

0.0.1 - 2026-01-04 #

Added #

  • Initial release of Flutter Khmer Chankitec plugin
  • Khmer lunar calendar (Chhankitek/ចន្ទគតិ) calculations
  • Convert Gregorian dates to Khmer lunar dates
  • Get current date in Khmer lunar calendar
  • Support for day of week in Khmer
  • Lunar day information (កើត/រោច phases)
  • Lunar month names in Khmer
  • Zodiac animal year (រាសី)
  • Era names (ស័ក)
  • Buddhist Era year calculation
  • Khmer number formatting
  • Sila day detection (ថ្ងៃសីល - Buddhist observance days)
  • Full moon and new moon day detection
  • Complete Khmer date formatting
  • Pure Dart implementation - works on all Flutter platforms
  • Comprehensive example app
  • Unit tests with 100% pass rate
1
likes
150
points
432
downloads

Publisher

unverified uploader

Weekly Downloads

A Flutter plugin for Khmer lunar calendar (Chhankitek/ចន្ទគតិ) calculations. Convert Gregorian dates to Khmer lunar dates with full support for Buddhist calendar features including Sila days detection.

Repository (GitHub)
View/report issues

Topics

#khmer #calendar #lunar-calendar #buddhist-calendar #cambodia

Documentation

API reference

License

MIT (license)

Dependencies

flutter

More

Packages that depend on flutter_khmer_chankitec