Skip to content
Jan Hermann edited this page Oct 19, 2026 · 6 revisions

🕹️

How to use the project.

Every namespace lives in src/timely/<namespace>/ and has its own page. Browser demos are in the examples/ folder.

🚀 Getting started

PHP

Composer registers the Timely\ namespaces, so classes can be used right after vendor/autoload.php is loaded:

require "vendor/autoload.php";

use Timely\Easter\Calculator;

Calculator::sunday(2026)->format("j.n.Y"); // "5.4.2026"

JavaScript

Import all classes as one namespace, see JavaScript:

import * as Timely from "./src/timely/index.js";

Timely.Helper.isLeap(2000); // true

Java

Classes are in the timely.<namespace> packages, e.g. timely.years.Helper.isLeap(2000).

📚 Documentation

🧩 Namespaces

  • Dates: Timely\Dates in dates/. Date comparison, working days (Helper.php), Gregorian/Julian conversions (Date.java), DateFormatter.js and Week.js.
  • Easter: Timely\Easter in easter/. EasterCalculator with Butcher, Oudin and Meeus algorithms, Good Friday and Easter Monday.
  • Holidays: Timely\Holidays in holidays/. Public holidays by language (Finder.php, czech/, slovak/).
  • Name Days: Timely\NameDays in namedays/. Czech and Slovak name days (NameDayFinder, CzechNameDayFinder, SlovakNameDayFinder).
  • Times: Timely\Times in times/. Current date and time formatting (Helper.php).
  • Years: Timely\Years in years/. Leap year checks (YearHelper).

🛠️ Everything else

  • Clocks: Web-based clocks in clocks/ (BCD, binary, normal, verbal, hexcolor).
  • JavaScript: ES module classes exported by index.js under the Timely namespace.
  • Examples: Browser demos of the JavaScript classes.
  • Tests: JUnit, PHPUnit and Node.js test suites.

Clone this wiki locally