npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

ethiopian-calendar-engine

v1.0.0

Published

Complete Ethiopian calendar engine with ecclesiastical feast calculations, localization, and Gregorian bridge

Readme

Ethiopian Calendar Engine

npm version License: MIT

Complete Ethiopian calendar engine with ecclesiastical feast calculations, localization, and Gregorian bridge.

✨ Features

  • Phase 1: Pure Ethiopian date arithmetic and conversions
  • Phase 2: Gregorian ↔ Ethiopian bridge layer
  • Phase 3: Ecclesiastical cycles (Wenber, Abekti, Metq) and movable feasts
  • Phase 4: Localization, fixed holidays, chronology, and public API
  • Phase 5: SaaS platform, monetization, governance & trust layer

📦 Installation

npm install ethiopian-calendar-engine

🚀 Quick Start

import { EthiopianCalendar } from 'ethiopian-calendar-engine';

// Get today's Ethiopian date
const today = EthiopianCalendar.today();
console.log(EthiopianCalendar.format(today));
// Output: ፲፬ ጥር 2018

// Convert Gregorian to Ethiopian
const ethDate = EthiopianCalendar.fromGregorian(2023, 1, 1);
console.log(EthiopianCalendar.format(ethDate));
// Output: ፳፫ ታኅሣሥ 2015

// Get all holidays for a year
const holidays = EthiopianCalendar.getAllHolidays(2018);
console.log(`Total holidays in 2018: ${holidays.length}`);

// Calculate movable feasts
const feasts = EthiopianCalendar.getMovableFeasts(2018);
console.log(feasts);
// Output: { ነነዌ: {...}, ዐቢይ ጾም: {...}, ... }

📚 API Reference

Core Functions

  • EthiopianCalendar.today(): Get current Ethiopian date (UTC)
  • EthiopianCalendar.fromGregorian(year, month, day): Convert Gregorian to Ethiopian
  • EthiopianCalendar.format(date): Format date with Amharic localization
  • EthiopianCalendar.getYearInfo(am): Get year metadata (leap, evangelist)
  • EthiopianCalendar.getAllHolidays(am): Get all holidays for year
  • EthiopianCalendar.getMovableFeasts(am): Calculate ecclesiastical feasts
  • EthiopianCalendar.isLeapYear(am): Check if leap year

Localization

Default Amharic locale with Ethiopic numerals. Extensible for other languages.

Ecclesiastical Features

  • Wenber calculation (19-year Metonic cycle)
  • Abekti/Metq lunar phase approximation
  • Movable feasts: Nenewe, Abiy Tsom, Hosanna, Tinseae (Easter), Erget
  • Evangelist cycle (28-year rotation)

🏛️ Governance & Trust

Calendar Advisory Board

  • Ethiopian Orthodox Church scholars
  • Astronomers and mathematicians
  • Software engineers specializing in calendrical calculations

Transparency

  • All core mathematics are open-source and auditable
  • Versioned releases with immutable calendar rules
  • Comprehensive documentation of ecclesiastical rules

Verification

// Get calculation proof for transparency
const proof = {
  wenber: calculateWenber(2018),    // 12
  abekti: calculateAbekti(12),      // 12
  metq: calculateMetq(12),          // 18
  sum: 12 + 18                      // 30 (always)
};

💎 Premium SaaS (algoraz.com)

For high-volume applications, government systems, and institutional use:

  • High-volume API access (REST endpoints)
  • Historical validation tables (canonical Easter dates)
  • Multi-calendar synchronization
  • Official certification endpoints
  • Government-grade SLAs

API Endpoints

GET /api/v1/today
GET /api/v1/convert/gregorian?year=2023&month=1&day=1
GET /api/v1/holidays/2018
GET /api/v1/verify/2018-05-14

Pricing Tiers

| Tier | Requests/Day | SLA | Support | |------------|-------------|-----|---------| | Free | 1,000 | - | Community | | Pro | 100,000 | 99.9% | Email | | Enterprise | Unlimited | 99.99% | Phone + On-site |

📜 License

MIT License - Core mathematics are open-source.

For commercial licensing of premium features, contact [email protected].

🎓 Academic & Institutional Use

References

  • Ethiopian Orthodox Church liturgical calendar
  • 19-year Metonic cycle mathematics
  • Astronomical approximations for lunar phases

Citation

Algoraz. (2024). Ethiopian Calendar Engine [Computer software].
https://github.com/abrishwo/ethiopian-calendar.git

🌍 Cultural Impact

This engine serves as a digital public good for:

  • Government calendars in Ethiopia
  • Church administration worldwide
  • Educational institutions teaching Ethiopian history
  • Cultural preservation of traditional timekeeping

🤝 Contributing

  1. Fork the repository
  2. Create feature branch
  3. Submit pull request
  4. Join the Calendar Advisory Board for rule changes

Development

git clone [email protected]:abrishwo/Ethiopian-calendar.git
cd ethiopian-calendar-engine
npm install
npm run demo  # Run demonstration

📞 Contact


Built with ❤️ for the Ethiopian diaspora and global scholarly community.