/uv-index-card

A Lovelace card that shows a the UV index and risk level for Home Assistant

Primary LanguageTypeScriptMIT LicenseMIT

UV Index card

A custom Lovelace card that displays the UV index and risk level in Home Assistant.

GitHub Release GitHub Release Date GitHub Releases GitHub Releases

HACS Badge HomeAssistant License

Project Maintenance GitHub Activity Open bugs Open enhancements

Community Forum

Installation

HACS (Home Assistant Community Store)

  1. Go to HACS page on your Home Assistant instance
  2. Select Frontend
  3. Press add icon and search for uv-index
  4. Select UV Index Card repo and install
  5. Force refresh the Home Assistant page (Ctrl + F5)
  6. Add uv-index-card to your page

Open your Home Assistant instance and open a repository inside the Home Assistant Community Store.

Manual

  1. Download the 'uv-index-card.js' from the latest release (with right click, save link as)
  2. Place the downloaded file on your Home Assistant machine in the config/www folder (when there is no www folder in the folder where your configuration.yaml file is, create it and place the file there)
  3. In Home Assistant go to Configuration->Lovelace Dashboards->Resources (When there is no resources tag on the Lovelace Dashboard page, enable advanced mode in your account settings, and retry this step)
  4. Add a new resource
    1. Url = /local/uv-index-card.js
    2. Resource type = module
  5. Force refresh the Home Assistant page (Ctrl + F5)
  6. Add uv-index-card to your page

Using the card

  • Add the card with the visual editor
  • Or add the card manually with the following (minimal) configuration:
type: custom:uv-index-card
entity: sensor.weather_station_uv

Lovelace Examples

Default

type: custom:uv-index-card
entity: sensor.weather_station_uv

Default

Options

Name Type Requirement Description Default
type string Required custom:uv-index-card
name string Optional Card name UV Index
show_error boolean Optional Show what an error looks like for the card false
show_warning boolean Optional Show what a warning looks like for the card false
entity string Required Home Assistant entity ID. none
language string Optional The 2 character that determines the language en
tap_action object Optional Action to take on tap action: more-info
hold_action object Optional Action to take on hold none
double_tap_action object Optional Action to take on double tap none

Action Options

Name Type Requirement Description Default
action string Required Action to perform (more-info, toggle, call-service, navigate url, none) more-info
navigation_path string Optional Path to navigate to (e.g. /lovelace/0/) when action defined as navigate none
url string Optional URL to open on click when action is url. The URL will open in a new tab none
service string Optional Service to call (e.g. media_player.media_play_pause) when action defined as call-service none
service_data object Optional Service data to include (e.g. entity_id: media_player.bedroom) when action defined as call-service none
haptic string Optional Haptic feedback success, warning, failure, light, medium, heavy, selection none
repeat number Optional How often to repeat the hold_action in milliseconds. none

Language

The following languages are supported:

Language Yaml value Supported Translated by
Czech cs v1.2.1 @MiisaTrAnCe
Dutch nl v1.2.0 @WoBBeLNL
English en v1.0.0 @t1gr0u
French fr v1.0.0 @t1gr0u
German de v1.0.0 @t1gr0u
Hungarian hu v1.2.1 @erelke
Italian it v1.2.0 @SiriosDev
Portuguese pt v1.2.0 @ViPeR5000
Swedish sv v1.2.1 @el97

How to add a language

If you wish to add a language please follow these steps:

  • Go into the src/localize/languages/ folder
  • Duplicate the en.json and name it as the language that you would like to add by following the 2 characters ISO language code
  • Then modify the localize.ts file, located in src/localize/ to include your language file.
  • Update the Readme.md, found in src/ to include your language and your Github username in the language table.

Thanks to

Support

Clone and create a PR to help make the card even better.