Skip to main content

Holidays

Display public holidays on your calendar with automatic detection based on your country, state, and region.

Overview​

The holiday feature integrates directly with your calendar, showing holidays as all-day events without creating any files in your vault. Holidays are automatically calculated using the date-holidays library, which works completely offline.

Configuration​

Navigate to Settings → Your Calendar Name → General (scroll to the bottom) to configure holiday display.

Basic Settings​

Enable holidays

  • Toggle to show or hide holidays on your calendar
  • Default: false (disabled)

Country

  • ISO country code (e.g., US, GB, DE, CA)
  • Required for holiday detection
  • Default: US

State/Province (Optional)

  • State or province code for regional holidays
  • Examples: ca (California), ny (New York), on (Ontario), by (Bavaria)
  • Leave empty for national holidays only

Region (Optional)

  • More specific region code for localized holidays
  • Used for cities or districts with unique holiday calendars

Holiday Types​

Choose which types of holidays to display:

OptionIncludes
Public holidays onlyOfficial public holidays
Public + Bank holidaysPublic and banking holidays
Public + Bank + ObservancePublic, bank, and observance days
All except optionalPublic, bank, observance, and school holidays
All typesEvery holiday type including optional ones

Timezone (Optional)

  • Specify timezone for holiday calculations
  • Examples: America/New_York, Europe/London, Asia/Tokyo
  • Leave empty to use system timezone

Examples​

United States (National)​

Country: US
State: (leave empty)
Types: Public holidays only

Displays: New Year's Day, Independence Day, Thanksgiving, Christmas, etc.

United States (California)​

Country: US
State: ca
Types: Public holidays only

Displays: National holidays plus California-specific holidays

United Kingdom​

Country: GB
Types: Public + Bank holidays

Displays: National holidays, bank holidays, royal events

Germany (Bavaria)​

Country: DE
State: by
Types: Public + Bank + Observance

Displays: National German holidays plus Bavarian regional holidays

Canada (Ontario)​

Country: CA
State: on
Types: Public holidays only

Displays: National Canadian holidays plus Ontario provincial holidays

How It Works​

Virtual Events​

  • Holidays appear as all-day virtual events on your calendar
  • They don't create any files in your vault
  • They're marked with isVirtual: true in the calendar data
  • Holiday metadata is stored in the event's meta property

Caching​

  • Holidays are cached per year for fast access
  • Cache is stored in Obsidian's local storage
  • Cache expires after 30 days
  • When you change settings, the cache is automatically cleared

Performance​

  • Works completely offline - no internet connection required
  • Uses the date-holidays npm library for accurate calculations
  • Minimal performance impact - holidays are loaded only for visible date ranges

Holiday Properties​

Each holiday event has the following properties:

  • ID: Unique identifier in format date-holidays:YYYY-MM-DD:Holiday Name
  • Title: Holiday name (e.g., "Christmas Day", "Independence Day")
  • Date: ISO date string (YYYY-MM-DD)
  • All Day: Always true
  • Virtual: Always true (not backed by a file)
  • Meta:
    • holidayType: Type of holiday (public, bank, school, observance, optional)
    • holidaySource: Always "date-holidays"

Filtering​

Holiday events respect your calendar's filter settings:

  • They appear in filtered event lists
  • They're excluded from statistics (duration tracking, etc.)
  • They don't appear in search results (since they have no backing files)

Limitations​

  • Holidays are read-only - you cannot edit or delete them via the calendar
  • Holiday calculations are based on the date-holidays library's data
  • Some countries/regions may have incomplete or outdated holiday information
  • Changes to holiday settings require a calendar refresh to take effect

Country Codes​

Common country codes:

  • US - United States
  • GB - United Kingdom
  • DE - Germany (Deutschland)
  • FR - France
  • CA - Canada
  • AU - Australia
  • JP - Japan
  • IN - India
  • BR - Brazil
  • MX - Mexico
  • IT - Italy
  • ES - Spain
  • NL - Netherlands
  • SE - Sweden
  • NO - Norway
  • DK - Denmark
  • FI - Finland
  • PL - Poland
  • CH - Switzerland

For a complete list of supported countries, see the date-holidays library documentation.