Vanilla Breeze

recently-visited

Device-local reader history lens. Tracks pages the reader has visited on this device only. Stored in localStorage, never sent to a backend, never aggregated.

Overview

This is the private half of the lens family. It records pages the reader has visited on this device only and surfaces them as a most-recent-first list. The data lives in localStorage under vb:recently-visited and never crosses the network.

Reader sovereignty is non-negotiable here: the component renders both a Pause toggle and a Clear control alongside the list, and an explicit explainer that this history is local-only.

Attributes

AttributeTypeDefaultDescription
limitnumber25Max entries kept in local history
no-trackbooleanfalseDon't append the current page on connect (useful for an embed on the home page)
empty-textstringbuilt-inMessage rendered when history is empty

Storage

Two localStorage keys are used:

vb:recently-visited
JSON array of { url, title, ts } records, most-recent-first.
vb:recently-visited:paused
"1" when the reader has paused tracking. Existence of the key is the signal — absence means tracking is active.

Both keys are reader-controllable: the Clear button removes the first; the Pause toggle manages the second. Privacy/incognito modes that block localStorage degrade silently — tracking just doesn't happen.

Events

EventDetailWhen
recently-visited:clearReader clears the local history