Download the PHP package codebros-nl/dutch-holidays without Composer
On this page you can find all versions of the php package codebros-nl/dutch-holidays. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download codebros-nl/dutch-holidays
More information about codebros-nl/dutch-holidays
Files in codebros-nl/dutch-holidays
Package dutch-holidays
Short Description Nederlandse feestdagen en werkdagberekeningen voor Laravel, met cao-/sector-profielen.
License MIT
Informations about the package dutch-holidays
Nederlandse feestdagen voor Laravel
Nederlandse feestdagen en werkdagberekeningen voor Laravel, met sector- en cao-profielen zodat je per klant of branche kunt configureren welke dagen vrij zijn.
Geen externe dependencies voor de holiday-berekeningen — alles is intern via het Gauss-algoritme.
Features
- ✅ Alle nationale Nederlandse feestdagen met automatische berekening (Pasen, Hemelvaart, Pinksteren, Koningsdag-uitzondering)
- ✅ 10 voorgedefinieerde sectorprofielen (overheid, bouw, zorg, onderwijs, ICT, grafimedia, ...)
- ✅ Eigen sectoren/cao's registreren met custom policies
- ✅ Per-feestdag policy:
Official,Always,Never - ✅ Extra niet-wettelijke dagen (carnaval, Sinterklaas, Oudejaarsdag, ...)
- ✅ Werkdag-helpers:
isWorkday(),nextWorkday(),addWorkdays(),workdaysBetween() - ✅ Carbon-macro's:
Carbon::today()->isDutchHoliday() - ✅ Artisan-commands voor inspectie
- ✅ Immutable, multi-tenant safe
- ✅ Volledig PHP 8.2+ met
readonly, enums, named args
Installatie
Publiceer optioneel de config:
Snelstart
Sectoren (cao's)
Het grootste verschil tussen cao's is welke dagen wel of niet vrij zijn. Daarom werkt het pakket met sectorprofielen.
Beschikbare sectoren
| Key | Sector | Goede Vrijdag | Bevrijdingsdag |
|---|---|---|---|
default |
Wettelijk | nee | lustrumjaren |
government |
Overheid | ja | ja |
construction |
Bouw | ja | ja |
metal |
Metaal & Techniek | ja | lustrumjaren |
healthcare |
Zorg | ja | lustrumjaren |
education |
Onderwijs | ja | ja |
hospitality |
Horeca | nee | lustrumjaren |
ict |
ICT / Software | nee | ja |
grafimedia |
Grafimedia | ja | ja |
retail |
Retail | nee | lustrumjaren |
Sector kiezen
Default sector instellen
In .env:
Of in config/dutch-holidays.php:
Eigen sectoren / cao's
Methode 1: ad-hoc policies
Voor incidenteel gebruik zonder een sector aan te maken:
Methode 2: SectorProfile registreren
Voor cao's die je vaker nodig hebt — registreer ze in een ServiceProvider:
Daarna:
Methode 3: dynamisch per klant in een service
Bij multi-tenant apps waar policies in de database staan:
Extra (niet-wettelijke) dagen
Voor regionale of bedrijfsspecifieke dagen:
Beschikbare extra-keys:
HolidayKey::CarnivalMonday/CarnivalTuesdayHolidayKey::SinterklaasHolidayKey::ChristmasEveHolidayKey::NewYearsEve
Werkdag-helpers
Carbon-macro's
Zijn standaard geregistreerd (uit te zetten via config):
Datumbereik en meerdere jaren
Collections
Resultaten zijn HolidayCollection-instances (extends \Illuminate\Support\Collection) met handige scoping:
Plus alle standaard Collection-methods (filter, map, groupBy, ...).
Artisan-commands
Custom HolidayProvider (geavanceerd)
Voor compleet eigen feestdagenbronnen (bijv. uit een database, een externe API of voor schoolvakanties) implementeer je HolidayProvider:
Providers worden ná de nationale set toegevoegd en kunnen bestaande dagen overrulen via dezelfde HolidayKey.
Disclaimer over cao-data
De voorgedefinieerde sectorprofielen weerspiegelen de meest gangbare invulling, maar cao-afspraken verschillen per werkgever en veranderen jaarlijks. Controleer altijd de actuele cao van je klant en pas indien nodig aan via ->withPolicies() of een eigen geregistreerde sector.
Testing
License
MIT — see LICENSE.md.
All versions of dutch-holidays with dependencies
illuminate/support Version ^11.0|^12.0|^13.0
illuminate/console Version ^11.0|^12.0|^13.0
nesbot/carbon Version ^2.72|^3.0