tab-icon¶
Provenance¶
- Source:
.spec/spexcode/spec-dashboard/tab-icon/spec.md - Source SHA-256:
175a295af144d918c224a2be2364a91ae78e1689efa9e63fc50f3b452591a5f6
The sibling of [[tab-title]]: every tab projects the icon belonging to its current pathname scope. A project
stores its chosen value in spexcode.json dashboard.icon (featured presets and the broad Iconify
catalog plus preserved legacy emoji/Iconify/URL forms); the global gateway stores its chosen icon only in the
host config described by [[identity-config]]. The backend and catalog expose resolved identities, and
[[project-identity]] selects the gateway record for /projects or the matching project row for /p/<id>/.
Favicon SVG/data-URI generation comes from [[icon-presets]], the same registry and serializer the visible
marks use. index.html contains only the link mount and plain title fallback, never a second hand-written
icon. The mount starts at the neutral data:, URL while scope is unresolved, so the browser never falls
back to a route-relative /favicon.ico; the resolved identity helper is the only writer of an actual icon.
Missing settings resolve to stable SpexCode/gateway defaults, so every loaded face gets a favicon; switching
scope or changing an icon updates the existing link live and survives reload/restart through its canonical
source.