{"id":26404122,"url":"https://github.com/djtimca/harocketlaunchlive","last_synced_at":"2025-07-23T03:04:19.108Z","repository":{"id":38848251,"uuid":"302145522","full_name":"djtimca/harocketlaunchlive","owner":"djtimca","description":"Home Assistant custom HACS integration to integrate the next 5 global rocket launches from https://rocketlaunch.live","archived":false,"fork":false,"pushed_at":"2025-05-09T13:02:25.000Z","size":106,"stargazers_count":17,"open_issues_count":0,"forks_count":3,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-09T14:22:11.026Z","etag":null,"topics":["home-assistant","home-assistant-custom","launch","nasa","rocket","spacex","ula"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/djtimca.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-10-07T19:54:21.000Z","updated_at":"2025-05-09T13:01:00.000Z","dependencies_parsed_at":"2025-03-17T16:20:35.534Z","dependency_job_id":"f701ff3f-830d-4959-8733-9711c09016fb","html_url":"https://github.com/djtimca/harocketlaunchlive","commit_stats":null,"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/djtimca/harocketlaunchlive","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djtimca%2Fharocketlaunchlive","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djtimca%2Fharocketlaunchlive/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djtimca%2Fharocketlaunchlive/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djtimca%2Fharocketlaunchlive/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/djtimca","download_url":"https://codeload.github.com/djtimca/harocketlaunchlive/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/djtimca%2Fharocketlaunchlive/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266608969,"owners_count":23955545,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["home-assistant","home-assistant-custom","launch","nasa","rocket","spacex","ula"],"created_at":"2025-03-17T16:20:32.634Z","updated_at":"2025-07-23T03:04:19.030Z","avatar_url":"https://github.com/djtimca.png","language":"Python","funding_links":["https://www.buymeacoffee.com/djtimca"],"categories":[],"sub_categories":[],"readme":"# Home Assistant Custom Component for Rocket Launch Live - Next 5 Global Launches\n\n\u003ca target=\"_blank\" href=\"https://www.buymeacoffee.com/djtimca\"\u003e\u003cimg src=\"https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png\" alt=\"Buy me a coffee\" style=\"height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;\"\u003e\u003c/a\u003e [![hacs_badge](https://img.shields.io/badge/HACS-Custom-orange.svg?style=for-the-badge)](https://github.com/hacs/integration)\n\nThe status of the next 5 launches will be returned as five individual sensors with additional data shared in the attributes:\n\n## Usage\n\n### Install through HACS:\n\nAdd a custom repository in HACS pointed to https://github.com/djtimca/harocketlaunchlive\n\nThe new integration for Rocket Launch Live should appear under your integrations tab.\n\nClick Install and restart Home Assistant.\n\n### Install manually:\n\nCopy the contents found in https://github.com/djtimca/harocketlaunchlive/custom_components/rocketlaunchlive to your custom_components folder in Home Assistant.\n\nRestart Home Assistant.\n\n### Activate the sensors:\n\nGo to Configuration -\u003e Integrations and click the + to add a new integration.\n\nSearch for Rocket Launch Live and you will see the integration available.\n\n#### Free API Use:\nClick add, leave the API key blank, confirm you want to install, and voila... you have the status of the next 5 launches as sensors in your Home Assistant.\n\n#### Paid API Use:\nClick add, enter your paid API key from https://rocketlaunch.live, confirm your installation, and you are all set.\n\nNote: Free API use does not have access to the media links, so the media attribute will always remain blank if you have not paid for access.\n\nEnjoy!\n\n### Display the data using the custom:button-card\n\nYou can easily display the data using the custom:button-card lovelace template from HACS:\n\n\u003cimg src=\"https://github.com/djtimca/harocketlaunchlive/blob/master/images/lovelace.png?raw=true\"\u003e\n\n```\ntype: vertical-stack\ntitle: Next 5 Rocket Launches\ncards:\n  - type: 'custom:button-card'\n    entity: sensor.rocket_launch_1\n    show_name: false\n    show_state: true\n    show_icon: false\n    layout: icon_state\n    styles:\n      card:\n        - font-size: 12px\n        - padding: 10px\n      grid:\n        - grid-template-areas: \u003e-\n            \"s\" \"provider\" \"vehicle\" \"launch_pad\" \"location\" \"target_date\"\n            \"tags\"\n        - grid-template-columns: 1fr\n        - grid-template-rows: 1fr min-content min-content min-content\n      state:\n        - font-weight: bold\n        - font-size: 16px\n        - align-self: start\n        - justify-self: start\n      custom_fields:\n        provider:\n          - align-self: start\n          - justify-self: start\n        vehicle:\n          - align-self: start\n          - justify-self: start\n        launch_pad:\n          - align-self: start\n          - justify-self: start\n        location:\n          - align-self: start\n          - justify-self: start\n        target_date:\n          - align-self: start\n          - justify-self: start\n        tags:\n          - align-self: start\n          - justify-self: start\n    custom_fields:\n      provider: |\n        [[[\n          return `Provider: ${states['sensor.rocket_launch_1'].attributes[\"provider\"]}`\n        ]]]\n      vehicle: |\n        [[[\n          return `Vehicle: ${states['sensor.rocket_launch_1'].attributes['vehicle']}`\n        ]]]\n      launch_pad: |\n        [[[\n          return `Launch Pad: ${states['sensor.rocket_launch_1'].attributes['launch_pad']}`\n        ]]]\n      location: |\n        [[[\n          return `Location: ${states['sensor.rocket_launch_1'].attributes['launch_location']}`\n        ]]]\n      target_date: |\n        [[[\n          return `Target Date: ${states['sensor.rocket_launch_1'].attributes['launch_date_target']}`\n        ]]]\n      tags: |\n        [[[\n          return `Tags: ${states['sensor.rocket_launch_1'].attributes['tags']}`\n        ]]]\n  - type: 'custom:button-card'\n    entity: sensor.rocket_launch_2\n    show_name: false\n    show_state: true\n    show_icon: false\n    layout: icon_state\n    styles:\n      card:\n        - font-size: 12px\n        - padding: 10px\n      grid:\n        - grid-template-areas: \u003e-\n            \"s\" \"provider\" \"vehicle\" \"launch_pad\" \"location\" \"target_date\"\n            \"tags\"\n        - grid-template-columns: 1fr\n        - grid-template-rows: 1fr min-content min-content min-content\n      state:\n        - font-weight: bold\n        - font-size: 16px\n        - align-self: start\n        - justify-self: start\n      custom_fields:\n        provider:\n          - align-self: start\n          - justify-self: start\n        vehicle:\n          - align-self: start\n          - justify-self: start\n        launch_pad:\n          - align-self: start\n          - justify-self: start\n        location:\n          - align-self: start\n          - justify-self: start\n        target_date:\n          - align-self: start\n          - justify-self: start\n        tags:\n          - align-self: start\n          - justify-self: start\n    custom_fields:\n      provider: |\n        [[[\n          return `Provider: ${states['sensor.rocket_launch_2'].attributes[\"provider\"]}`\n        ]]]\n      vehicle: |\n        [[[\n          return `Vehicle: ${states['sensor.rocket_launch_2'].attributes['vehicle']}`\n        ]]]\n      launch_pad: |\n        [[[\n          return `Launch Pad: ${states['sensor.rocket_launch_2'].attributes['launch_pad']}`\n        ]]]\n      location: |\n        [[[\n          return `Location: ${states['sensor.rocket_launch_2'].attributes['launch_location']}`\n        ]]]\n      target_date: |\n        [[[\n          return `Target Date: ${states['sensor.rocket_launch_2'].attributes['launch_date_target']}`\n        ]]]\n      tags: |\n        [[[\n          return `Tags: ${states['sensor.rocket_launch_2'].attributes['tags']}`\n        ]]]\n  - type: 'custom:button-card'\n    entity: sensor.rocket_launch_3\n    show_name: false\n    show_state: true\n    show_icon: false\n    layout: icon_state\n    styles:\n      card:\n        - font-size: 12px\n        - padding: 10px\n      grid:\n        - grid-template-areas: \u003e-\n            \"s\" \"provider\" \"vehicle\" \"launch_pad\" \"location\" \"target_date\"\n            \"tags\"\n        - grid-template-columns: 1fr\n        - grid-template-rows: 1fr min-content min-content min-content\n      state:\n        - font-weight: bold\n        - font-size: 16px\n        - align-self: start\n        - justify-self: start\n      custom_fields:\n        provider:\n          - align-self: start\n          - justify-self: start\n        vehicle:\n          - align-self: start\n          - justify-self: start\n        launch_pad:\n          - align-self: start\n          - justify-self: start\n        location:\n          - align-self: start\n          - justify-self: start\n        target_date:\n          - align-self: start\n          - justify-self: start\n        tags:\n          - align-self: start\n          - justify-self: start\n    custom_fields:\n      provider: |\n        [[[\n          return `Provider: ${states['sensor.rocket_launch_3'].attributes[\"provider\"]}`\n        ]]]\n      vehicle: |\n        [[[\n          return `Vehicle: ${states['sensor.rocket_launch_3'].attributes['vehicle']}`\n        ]]]\n      launch_pad: |\n        [[[\n          return `Launch Pad: ${states['sensor.rocket_launch_3'].attributes['launch_pad']}`\n        ]]]\n      location: |\n        [[[\n          return `Location: ${states['sensor.rocket_launch_3'].attributes['launch_location']}`\n        ]]]\n      target_date: |\n        [[[\n          return `Target Date: ${states['sensor.rocket_launch_3'].attributes['launch_date_target']}`\n        ]]]\n      tags: |\n        [[[\n          return `Tags: ${states['sensor.rocket_launch_3'].attributes['tags']}`\n        ]]]\n  - type: 'custom:button-card'\n    entity: sensor.rocket_launch_4\n    show_name: false\n    show_state: true\n    show_icon: false\n    layout: icon_state\n    styles:\n      card:\n        - font-size: 12px\n        - padding: 10px\n      grid:\n        - grid-template-areas: \u003e-\n            \"s\" \"provider\" \"vehicle\" \"launch_pad\" \"location\" \"target_date\"\n            \"tags\"\n        - grid-template-columns: 1fr\n        - grid-template-rows: 1fr min-content min-content min-content\n      state:\n        - font-weight: bold\n        - font-size: 16px\n        - align-self: start\n        - justify-self: start\n      custom_fields:\n        provider:\n          - align-self: start\n          - justify-self: start\n        vehicle:\n          - align-self: start\n          - justify-self: start\n        launch_pad:\n          - align-self: start\n          - justify-self: start\n        location:\n          - align-self: start\n          - justify-self: start\n        target_date:\n          - align-self: start\n          - justify-self: start\n        tags:\n          - align-self: start\n          - justify-self: start\n    custom_fields:\n      provider: |\n        [[[\n          return `Provider: ${states['sensor.rocket_launch_4'].attributes[\"provider\"]}`\n        ]]]\n      vehicle: |\n        [[[\n          return `Vehicle: ${states['sensor.rocket_launch_4'].attributes['vehicle']}`\n        ]]]\n      launch_pad: |\n        [[[\n          return `Launch Pad: ${states['sensor.rocket_launch_4'].attributes['launch_pad']}`\n        ]]]\n      location: |\n        [[[\n          return `Location: ${states['sensor.rocket_launch_4'].attributes['launch_location']}`\n        ]]]\n      target_date: |\n        [[[\n          return `Target Date: ${states['sensor.rocket_launch_4'].attributes['launch_date_target']}`\n        ]]]\n      tags: |\n        [[[\n          return `Tags: ${states['sensor.rocket_launch_4'].attributes['tags']}`\n        ]]]\n  - type: 'custom:button-card'\n    entity: sensor.rocket_launch_5\n    show_name: false\n    show_state: true\n    show_icon: false\n    layout: icon_state\n    styles:\n      card:\n        - font-size: 12px\n        - padding: 10px\n      grid:\n        - grid-template-areas: \u003e-\n            \"s\" \"provider\" \"vehicle\" \"launch_pad\" \"location\" \"target_date\"\n            \"tags\"\n        - grid-template-columns: 1fr\n        - grid-template-rows: 1fr min-content min-content min-content\n      state:\n        - font-weight: bold\n        - font-size: 16px\n        - align-self: start\n        - justify-self: start\n      custom_fields:\n        provider:\n          - align-self: start\n          - justify-self: start\n        vehicle:\n          - align-self: start\n          - justify-self: start\n        launch_pad:\n          - align-self: start\n          - justify-self: start\n        location:\n          - align-self: start\n          - justify-self: start\n        target_date:\n          - align-self: start\n          - justify-self: start\n        tags:\n          - align-self: start\n          - justify-self: start\n    custom_fields:\n      provider: |\n        [[[\n          return `Provider: ${states['sensor.rocket_launch_5'].attributes[\"provider\"]}`\n        ]]]\n      vehicle: |\n        [[[\n          return `Vehicle: ${states['sensor.rocket_launch_5'].attributes['vehicle']}`\n        ]]]\n      launch_pad: |\n        [[[\n          return `Launch Pad: ${states['sensor.rocket_launch_5'].attributes['launch_pad']}`\n        ]]]\n      location: |\n        [[[\n          return `Location: ${states['sensor.rocket_launch_5'].attributes['launch_location']}`\n        ]]]\n      target_date: |\n        [[[\n          return `Target Date: ${states['sensor.rocket_launch_5'].attributes['launch_date_target']}`\n        ]]]\n      tags: |\n        [[[\n          return `Tags: ${states['sensor.rocket_launch_5'].attributes['tags']}`\n        ]]]\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjtimca%2Fharocketlaunchlive","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdjtimca%2Fharocketlaunchlive","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdjtimca%2Fharocketlaunchlive/lists"}