How-to

Filter Persistence Across Pages

How the time range and source filters are remembered when you navigate between pages.

1 min readLast updated 26 April 2026
Jump to section

Filter Persistence

When you change the time range (1h, 24h, 7d, 30d, etc.) or the source filter on any page, that choice now persists across page navigation.

How it works

The hook checks three sources in order:

  1. URL query parameter — if the page URL has ?range=7d, that wins. Bookmarks and shared links work as expected.
  2. localStorage — if the URL has no ?range= param, the hook falls back to the last value you explicitly chose on any page.
  3. Hard-coded default24h for range, null (all sources) for source.

What changed

Before 2026-04-25, navigating from /overview?range=7d to /offenders lost the ?range= param because React Router doesn't carry search params across links. The range appeared to "reset" to 24h every time you changed pages. Now the operator's last choice carries forward.

Edge cases

  • Incognito / localStorage unavailable — falls through to the 24h default, no crash.
  • Two browser tabs with different ranges — last writer wins. Each tab shows its own state until it navigates or refreshes.
  • Cleared localStorage / fresh browser — defaults to 24h, identical to pre-fix behaviour.

Storage keys (for the curious)

  • blankitt-edge:range — one of 5m / 15m / 30m / 1h / 2h / 6h / 24h / 7d / 30d
  • blankitt-edge:source — source UUID, or absent when "all sources" is selected

Still stuck? Email support or open the support widget in the bottom-right.