Support by Calendar Type
What you can do from inside the card depends on the underlying Home Assistant calendar integration. The card adapts its UI to each calendar’s capabilities — buttons for unsupported actions are hidden or disabled automatically.* Google Calendar edits use a safe create-then-delete flow. The Home Assistant Google Calendar integration does not expose a true update operation, so the card simulates editing by creating a new event with your changes and then deleting the original. From the user’s perspective the event appears edited; under the hood it is a brand new event.One side effect: the event’s UID changes, and any external links or integrations that reference the original UID will need to be updated.
CalDAV is version dependent. The card can always add new events to a CalDAV calendar, but editing and deleting existing events is dependent on the CalDAV version. The card reads those capabilities and shows Edit/Delete buttons accordingly.
Creating Events
To create a new event, click the Add Event button in the card header. A modal form opens where you fill in:- Event title (required)
- Start date and time
- End date and time
- All-day toggle — when enabled, time fields are hidden and the event spans the full day
- Location — optional venue or address
- Description — optional free-text notes (supports Markdown and basic HTML)
- Calendar — choose which calendar the event is saved to from a dropdown of your writable calendars
Editing Events
To edit an existing event, click it anywhere in the calendar grid to open the event detail modal. Then click Edit Event. The same form used for creation appears, pre-populated with the event’s current data. Make your changes, then click Save Changes. The Edit button only appears for events on calendars that support editing. See Support by Calendar Type above for the per-integration matrix.Recurring Events
When creating or editing an event, toggle the Recurring switch to reveal recurrence options:- Frequency —
Daily,Weekly,Monthly, orYearly - Interval — repeat every N frequency units (e.g. every 2 weeks)
- Weekdays — for weekly recurrence, select which days of the week the event falls on
- End condition — choose
Never,On a date(enter an end date), orAfter N occurrences
Deleting Events
From the event detail modal, click Delete. You will be asked to confirm. For recurring events, a second prompt asks you how to apply the deletion:
The Delete button only appears for events on calendars that support deletion. See Support by Calendar Type above.
Custom Event Colors
You can override the color of any event directly from the event detail modal without changing the event in Home Assistant or the source calendar. Custom colors are stored in the browser and apply only on that device, which makes them ideal for personalizing shared family calendars or highlighting events on a single dashboard. To set a custom color, click the event in the calendar grid to open the detail modal, then click Custom Color. A compact color picker opens with:- A row of preset color swatches
- A native color picker (
<input type="color">) - A hex input synced with the picker, validated against
#RRGGBBformat - A live preview of the event chip
- Apply Color, Use Default, and Cancel actions
Recurring events
When you set a custom color on a recurring event, you’re asked how far the override should apply:
More specific scopes take precedence: a per-occurrence override wins over a future-rule override, which wins over a series-wide override.
Combined events
If you use combined calendars, the event may appear on more than one source calendar at once. Selecting Custom Color on a combined event first prompts you to choose which calendar copy to color, so you can style each source independently.How overrides interact with event_styles
A custom color set from the modal overrides the background_color (also known as color) supplied by any matching event style rule. All other style properties from event_styles — icons, opacity, filters, font color, and so on — still apply. If you want to revert to the styled or calendar default, open the modal again and click Use Default.
Custom colors are persisted in browser storage under the same key as hidden-calendar preferences. Set a unique
preference_storage_key on each card to keep overrides from bleeding across dashboards. Clearing browser data for Home Assistant, or switching to a different device or user profile, resets the overrides.Configuration Options
boolean
default:"true"
Master switch for all event management features. Set to
false to make the card completely read-only — the Add Event button is hidden and clicking events opens a read-only detail view with no Edit or Delete actions.list
A list of calendar entity IDs that should be treated as read-only even when event management is enabled. Events on these calendars can be viewed but not edited or deleted from the card.
boolean
default:"false"
Hide the Add Event button from the header. This also hides the contextual Add Event button in the
show_events day-events popup (see Month view). Users can still edit and delete existing events unless you also disable event management or mark calendars as read-only.string
default:"medium"
Set the width of the event management modal. Supported values are
narrow, medium, wide, and full. Invalid or missing values fall back to medium. The setting applies to every event modal — create, edit, view, and delete confirmations.boolean
default:"false"
Let users click the location in the event detail modal to reveal location actions. This does not change event rows in Month, Week, Schedule, or Agenda views.When enabled, clicking a modal location reveals Open in Google Maps and Copy address actions. Maps open only after the user clicks the action.
