Skip to content

Support a configurable landing page and optional URL-preserving page navigation #2164

Description

@PLUN2601

Description

Problem

FlowFuse Dashboard currently uses Vue Router in HTML5 History mode.

Whenever the user navigates between Dashboard pages, the browser URL changes, e.g.

/dashboard/heating
/dashboard/lighting

This works well on desktop browsers.

However, on iOS/iPadOS (Safari / Home Screen Web App), every route change is interpreted as browser navigation. As a consequence:

  • Safari displays the navigation bar ("Close", Back, Forward).
  • The application no longer behaves like a native full-screen dashboard.
  • When the Home Screen shortcut is created, iOS stores the current page URL instead of only /dashboard.
    Therefore the shortcut always opens the same dashboard page.

Requested features

1. Configurable landing page

Allow the Dashboard base URL

/dashboard

to open a configurable default page without permanently changing the visible URL.

This would allow users to change the default page later without recreating Home Screen shortcuts.

2. Optional URL-preserving navigation

Provide an optional navigation mode where switching between dashboard pages does not modify the browser URL.

Possible implementations could include:

  • Hash routing (createWebHashHistory)
  • Optional memory routing
  • Configurable router mode
  • Any other implementation that keeps /dashboard constant.

Benefit

This would significantly improve the user experience for:

  • iPhone
  • iPad
  • kiosk installations
  • dedicated wall tablets

while remaining fully backward compatible.

Have you provided an initial effort estimate for this issue?

I am no FlowFuse team member

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-triageNeeds looking at to decide what to do

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions