Navigate Anywhere
Small frontend helper for Home Assistant that adds coordinate-based scrolling to normal Home Assistant Lovelace navigation.
You can keep using the built-in navigate action. Just simply add the coordinate to end of line
Before
tap_action:
action: navigate
navigation_path: /lovelace/alarm…but now you can add x / y coordinates to the URL and the view will automatically scroll to that position:
After
tap_action:
action: navigate
navigation_path: /lovelace/alarm?y=800The helper runs entirely in the browser. No backend changes, no integration, no AppDaemon, no Extra Card – just a Lovelace resource.
| Before | After |
|---|---|
![]() |
![]() |
Features
-
Works with the normal
navigateaction (no custom actions). -
Scrolls the active Lovelace view to a given vertical (
y) or horizontal (x) offset. -
Supports both:
x/y
-
After scrolling, it automatically removes the scroll parameters from the URL so other views are not affected.
-
Works with:
- default dashboards,
- panel mode,
- Home Assistant mobile app (as long as custom resources are loaded normally).
Installation
1. Via HACS (recommended)
- In HACS, go to Frontend → Custom repositories.
- Search for the repository
- Install “Navigate Anywhere”.
Usage
The helper hooks into the normal Lovelace navigation flow.
You can keep using:
tap_action:
action: navigate
navigation_path: /lovelace/alarmBut Now you can add query parameters:
Vertical scroll (y)
Scroll the view to 800 pixels from the top:
type: <<Any Card You Use, you don't need any extra card or integration>>
tap_action:
action: navigate
navigation_path: /lovelace/alarm?y=800 <<`just add coordinate: ?y=800`>>Horizontal scroll (x)
Scroll horizontally to 300 pixels:
type: button
name: Go to X=300
tap_action:
action: navigate
navigation_path: /lovelace/alarm?x=300Both X and Y
Scroll to a specific coordinate:
type: button
name: Go to (300, 900)
tap_action:
action: navigate
navigation_path: /lovelace/alarm?x=300&y=900How it behaves
-
When the dashboard loads or navigation happens, the script:
-
Checks the current URL for any of these parameters:
x,y
-
Waits a short time so the view can render.
-
Scrolls the Lovelace view (or window as fallback) to the specified coordinates.
-
Examples
Example 1 – Jump to a section on a long dashboard
type: button
name: Go to Cameras section
icon: mdi:cctv
tap_action:
action: navigate
navigation_path: /lovelace/security?y=1200Example 2 – From a “summary” dashboard to a “details” dashboard
type: button
name: Alarm Details
tap_action:
action: navigate
navigation_path: /lovelace/alarm-details?y=600This opens the alarm-details view and scrolls directly to the relevant section.
Credits
Made as a tiny helper for people who:
- Build long vertical or horizontal dashboards
- Use tablets / wall panels
- Want dashboards to open at a specific scroll offset
…without touching backend or writing custom actions.
License
Apache-2.0 license

