Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

holidays-cs

Package Overview
Dependencies
Maintainers
0
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

holidays-cs

Public holidays, Easter, name days and important days in the Czech Republic.

  • 2.1.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
68
increased by223.81%
Maintainers
0
Weekly downloads
 
Created
Source

Holidays (cs)

NPM Downloads NPM Version NPM License Last Commit GitHub Workflow Status

Public holidays and significant days in the Czech Republic.

Functions

All functions are available in the main module. You can import them like this:

import * as holidays from 'holidays-cs';

Luxon is used for date manipulation. You can pass a Date object or a DateTime object to the functions. Responses are always DateTime objects. If you need a Date object, you can use the response.toJSDate() method.

Czech public holidays

import {DateTime} from 'luxon';
import {isPublicHoliday, getPublicHoliday} from 'holidays-cs';

// 1. january
isPublicHoliday(DateTime.fromISO('2024-01-01')); // true

// 2. january
isPublicHoliday(DateTime.fromISO('2024-01-02')); // false

// 17. november
isPublicHoliday(DateTime.fromISO('2024-11-17')); // true
getPublicHoliday(DateTime.fromISO('2024-11-17')); // Den boje za svobodu a demokracii (1939 a 1989)

You can get all public holidays for a given year:

import {getPublicHolidaysList} from 'holidays-cs';

getPublicHolidaysList(2024); // returns Map with all 13 holidays

Shops status

In the Czech Republic, shops are closed on some public holidays.

import {DateTime} from 'luxon';
import {areShopsOpen, getShopsStatus} from 'holidays-cs';

// 24. december 2024
areShopsOpen(DateTime.fromISO('2024-12-24')); // true

// 25. december 2024
getShopsStatus(DateTime.fromISO('2024-12-25')); // otevřeno do 12:00 

// New Year's Day 2025
areShopsOpen(DateTime.fromISO('2025-01-01')); // false
getShopsStatus(DateTime.fromISO('2025-01-01')); // zavřeno

Czech significant days

Significant days are not public holidays, but they are important in the Czech Republic.

import {DateTime} from 'luxon';
import {isSignificantDay, getSignificantDay} from 'holidays-cs';

// 16. jan 2024
isSignificantDay(DateTime.fromISO('2024-01-16')); // true
getSignificantDay(DateTime.fromISO('2024-01-16')).name; // Den památky Jana Palacha

Visit the significant days page for more information.

Easter

Easter Monday (Velikonoční pondělí) and Good Friday (Velký pátek) are public holidays in the Czech Republic.

Easter date

Library can calculate the Easter date for a given year (it's Sunday):

import {getEaster} from 'holidays-cs';

getEaster(2024).toISODate(); // 2024-03-31
getEaster(2025).toISODate(); // 2025-04-20

Need more? Check out the Easter Date library.

Easter days

import {getGoodFriday, getHolySaturday, getEasterSunday, getEaster, getEasterMonday} from 'holidays-cs';

getGoodFriday(2024).toISODate(); // 2024-03-29
getHolySaturday(2024).toISODate(); // 2024-03-30

// Easter Sunday and Easter are the same
getEasterSunday(2024).toISODate(); // 2024-03-31
getEaster(2024).toISODate(); // 2024-03-31

getEasterMonday(2024).toISODate(); // 2024-04-01

You can also check if a given date is Good Friday, Holy Saturday, Easter Sunday or Easter Monday:

import {isGoodFriday, isHolySaturday, isEasterSunday, isEasterMonday} from 'holidays-cs';
import {DateTime} from 'luxon';


// 29. march 2024 - Good Friday
isGoodFriday(DateTime.fromISO('2024-03-29')); // true

// 30. march 2024 - Holy Saturday
isHolySaturday(DateTime.fromISO('2024-03-30')); // true

// 31. march 2024 - Easter Sunday
isEasterSunday(DateTime.fromISO('2024-03-31')); // true

// 1. april 2024 - Easter Monday
isEasterMonday(DateTime.fromISO('2024-04-01')); // true

Holy Week

You can also check if given date is part of the Holy Week. Holy Week is the week before Easter plus Easter Monday. Starts with Palm Sunday and ends with Easter Monday.

import {isHolyWeek, getHollyWeekInterval} from 'holidays-cs';

// 29. march 2024
isHolyWeek(DateTime.fromISO('2024-03-29')); // true it's Good Friday

// Get the Holy Week interval
getHollyWeekInterval(2024) // {start: DateTime, end: DateTime}

You can also get the name of the day in the Holy Week:

import {DateTime} from 'luxon';
import {getEasterDayName} from 'holidays-cs';

getEasterDayName(DateTime.fromISO('2024-03-29')); // Velký pátek

Get day metadata

You can get metadata for a given date:

import {DateTime} from 'luxon';
import {getDayMeta} from 'holidays-cs';

const meta = getDayMeta(DateTime.fromISO('2024-05-15'));
meta.isPublicHoliday; // false ...

The metadata object looks like this:

export type SignificantDay = {
  name: string;
  description: string;
  year?: number;
};

export type EasterMetadata = {
  name: string | undefined;
  isGoodFriday: boolean;
  isHolySaturday: boolean;
  ieEasterSunday: boolean;
  isEasterMonday: boolean;
};

export type DayMetadata = {
  // Significant days metadata
  isSignificantDay: boolean;
  significantDay?: SignificantDay;

  // Public holidays metadata
  isPublicHoliday: boolean;
  publicHoliday?: string | undefined;

  // Easter metadata
  isHolyWeek: boolean;
  easter?: EasterMetadata | undefined;

  // Shops metadata
  shops: {areOpen: boolean; status: string};
};

Credits

License

MIT

Keywords

FAQs

Package last updated on 08 Oct 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc