Skip to main content
The Daylight Calendar Card is designed to work out of the box with any Home Assistant calendar integration, but a few common configuration issues can cause unexpected behavior. This page walks you through the most frequently encountered problems and how to resolve them. Work through the section that matches your symptom, and if nothing here helps, see the bug report guidance at the bottom of this page.
This error means Home Assistant has not loaded the card’s JavaScript file as a dashboard resource. The card UI will not render at all until the resource is registered.Steps to fix:
  1. In Home Assistant, go to Settings → Dashboards → Resources (you may need to enable Advanced Mode in your profile first).
  2. Check that skylight-calendar-card.js is listed and its type is set to JavaScript Module.
  3. If the entry is missing, add it manually. The URL should match your installation path, for example /hacsfiles/daylight-calendar-card/skylight-calendar-card.js (HACS) or /local/skylight-calendar-card.js (manual).
  4. Hard-refresh your browser with Ctrl+Shift+R (Windows/Linux) or Cmd+Shift+R (Mac) to force the browser to reload the resource.
If you installed via HACS, the resource entry is usually added automatically. If it’s missing, try removing and re-downloading the card in HACS, then check Resources again.
A blank calendar most often means the card cannot find any events from the configured entities, or the entities themselves are not returning data.Things to check:
  • Verify that the entity IDs in your entities list exactly match calendar entities in Home Assistant. Entity IDs are case-sensitive.
  • Open the Calendar view in the Home Assistant sidebar and confirm your events appear there. If they don’t, the problem is with the calendar integration itself, not the card.
  • Review your YAML for typos in the entities block:
type: custom:daylight-calendar-card
entities:
  - calendar.my_google_calendar
  - calendar.family
  • Temporarily remove any filters that could be hiding all events, such as:
past_event_mode: hide
default_hidden_calendars:
  - calendar.my_google_calendar
Open your browser’s developer console (F12) and look for any errors from the card while the dashboard loads. Connection errors may indicate that Home Assistant is slow to deliver calendar data — try refreshing the page after a few seconds.
The Add Event button is hidden when event management is disabled or no writable calendar is available.Check each of the following in your card YAML:
  • enable_event_management: false — set this to true to enable event management.
  • hide_add_event_button: true — set this to false or remove the line entirely.
  • All of your calendar entities are listed under readonly_calendars — remove any calendars you want to write to from that list.
type: custom:daylight-calendar-card
entities:
  - calendar.my_calendar
enable_event_management: true
hide_add_event_button: false
readonly_calendars: []
At least one calendar entity must be writable (i.e., your Home Assistant integration must support creating events for that calendar). Read-only integrations — such as some holiday calendars — cannot receive new events regardless of card settings.
There are several reasons an event might not be editable or deletable:Google Calendar events Editing events is not supported through the Home Assistant Google Calendar integration. Google Calendar edits are simulated via create-then-delete, which changes the event’s UID. To truly an event, use the Google Calendar app or website directly. Deletion does work through HA.Event is missing a UID Some calendar integrations do not attach a UID to every event. Without a UID, the card cannot uniquely identify the event to send an edit or delete request. The only fix is to delete the event and recreate it through a source that generates UIDs.Calendar is marked read-only in the card config Check whether the calendar is listed under readonly_calendars:
readonly_calendars:
  - calendar.work_holidays
Remove it from the list if you want to allow editing.Event management is disabled globally Confirm enable_event_management is not set to false in your card config.
Never store sensitive data in calendar event titles or descriptions with the expectation that the card’s read-only setting will protect it. readonly_calendars only affects the card UI — the underlying HA integration may still allow edits through other means.
Weather icons require a valid weather.* entity that provides a daily forecast.Steps to fix:
  1. Confirm you have set header_weather_sensor in your card config:
header_weather_sensor: weather.home
  1. Open Developer Tools → States in Home Assistant and search for your weather entity (e.g. weather.home). Verify it exists and has a valid state.
  2. Confirm that the weather integration provides a daily forecast. Some integrations only provide hourly forecasts, which the card does not use for day-cell icons.
  3. If the entity exists and has a daily forecast but icons still don’t appear, check the browser console for errors related to the weather subscription.
On slower Home Assistant instances, weather data may take a few seconds to arrive after the page loads. Refresh the page and wait a moment before concluding the icons are broken.
Height behavior depends on the dashboard layout you’re using.Using a panel or grid dashboard layout Enable compact height mode to let the card fill its container:
compact_height: true
This tells the card to measure its parent container and size itself to fit the available vertical space. It works correctly in HA panel and grid dashboard layouts.Using a sidebar or standard layout The card auto-sizes to its content in standard layouts. If it appears clipped, check whether compact_height: true is set — this mode is not appropriate for sidebar layouts and may cause the card to collapse. Remove it or set it to false.Fine-tuning the height Use height_scale to proportionally scale the card taller or shorter:
height_scale: 1.2   # 20% taller than default
height_scale: 0.85  # 15% shorter than default
compact_height: true requires the card to be placed in a grid or panel dashboard layout. In a standard vertical layout, use height_scale instead.
If you see the same event appearing twice (or more), you likely have multiple calendar entities that both contain that event — for example, a personal Google Calendar and a shared family calendar that both include the same entry.Enable calendar combining to automatically deduplicate events that share the same UID:
combine_calendars: true
Deduplication relies on event UIDs. If duplicates persist after enabling combine_calendars, the events may have different UIDs across calendars, in which case the card treats them as distinct events.
The card auto-detects your language from Home Assistant’s locale settings. If detection produces the wrong language or date format, you can override both explicitly.Set the display language:
language: de
Supported language codes: en (English), fr (French), de (German), nl (Dutch), es (Spanish), ca (Catalan), da (Danish), sv (Swedish).Set the date and time locale:
locale: en-US
The locale key controls how dates and times are formatted (e.g. MM/DD/YYYY vs DD.MM.YYYY) and is independent of the language key.
If you share a dashboard with users in different regions, set both language and locale explicitly so formatting is consistent regardless of individual HA profiles.
If none of the above resolves your issue, please open a GitHub issue so the maintainer can investigate.Before submitting, gather the following:
  • Which dashboard view and card position is affected
  • Your complete card YAML configuration (remove any sensitive entity names if needed)
  • Screenshots or a screen recording of the problem
  • Your Home Assistant version (found in Settings → About)
  • Your browser and version
  • Any errors shown in the browser developer console (F12 → Console tab)
Incomplete bug reports are much harder to diagnose. Including your full YAML config and HA version is the single most helpful thing you can do.
Open an issue at github.com/superdingo101/daylight-calendar-card.