2025-03-13 21:13:14 +01:00
2025-03-23 13:31:21 +01:00
2025-03-13 21:13:14 +01:00
2025-03-23 14:37:22 +01:00
2025-03-15 09:16:11 +01:00
2025-03-23 13:31:21 +01:00
2025-03-13 21:13:14 +01:00
2025-03-13 21:13:14 +01:00
2025-03-13 21:13:14 +01:00
2025-03-15 09:03:10 +01:00
2025-04-13 16:41:17 +02:00
2025-03-13 21:13:14 +01:00
2025-03-13 21:13:14 +01:00

Work Calendar

A PHP application for managing work calendar and absences.

Project Structure

The project follows a clean architecture pattern with the following components:

  • Model: Contains domain models like Absence
  • Service: Contains service classes for business logic
    • AbsenceClient: Handles API communication with the absence.io service
    • AbsenceManager: Manages absence data retrieval and caching
    • CalendarService: Handles calendar generation and processing

Recent Improvements

  • Added proper domain model for Absence to encapsulate absence data and behavior
  • Improved service classes with better separation of concerns
  • Added caching for improved performance
  • Improved error handling in API client
  • Removed code duplication
  • Added early returns for cleaner code flow

Requirements

  • PHP 8.1 or higher
  • Composer
  • Absence.io API credentials (KEY and ID)
Description
No description provided
Readme 151 KiB
Languages
PHP 84.3%
Twig 12.5%
Dockerfile 3.2%