strolap-calendar/README.md
2025-03-13 21:13:14 +01:00

28 lines
909 B
Markdown

# 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)