Logo Lanfrica

Zolayetefe/ethiopian-calendar-api

Domain:

digital infrastructure

Record type:

softwaretools
Creator:
Zol
Host:
Ethiopian Calendar Api # πŸ“… Ethiopian Calendar & Business Date API **A Production-Ready REST API for Ethiopian Calendar Conversion, Holiday Management, and Business Date Calculations** --- ## πŸ“‹ Table of Contents - Overview - Features - Quick Start - API Documentation - Testing - Project Structure - Error Handling - Use Cases - Performance - Contributing - License --- ## 🌟 Overview The **Ethiopian Calendar & Business Date API** is a fast and accurate REST API that handles conversion between Gregorian and Ethiopian calendars, along with advanced features like holiday detection and business day calculations. Built with **Node.js + Express**, it is suitable for banking, HR/payroll, government systems, event planning, and mobile applications in Ethiopia. ### Ethiopian Calendar Key Facts - 13 months (12 months of 30 days + Pagume: 5 or 6 days) - New Year starts on **September 11** (or 12 in Gregorian leap years) - Approximately 7–8 years behind the Gregorian calendar --- ## ✨ Features ### Core Conversion - Gregorian ↔ Ethiopian date conversion - Today's date in both calendars - Round-trip validation ### Calendar Features - Month and Year calendar generation - Day and week information - Support for English & Amharic - Pagume (13th month) validation - Leap year handling ### Holiday Management - All public holidays - Religious holidays (Genna, Fasika, Timket, etc.) - Holiday checker - Upcoming holidays ### Business Date Features - Check working day - Next / Previous working day - Working days between two dates - Settlement date calculation (T+2, T+3, etc.) - Fiscal year information --- ## πŸš€ Quick Start ### Prerequisites - Node.js β‰₯ 14 - npm ### Installation ```bash git clone github.com cd ethiopian-calendar-api npm install # Start in production npm start # Start in development (with auto-reload) npm run dev API will be available at: localhost Environment Variables (.env) envPORT=3000 NODE_ENV=developm …

Languages

Licenses