Skip to content

fix(web): brand the page titles and give shared links a preview - #66

Merged
MikkoNumminen merged 1 commit into
masterfrom
fix/branded-titles-and-og
Jul 28, 2026
Merged

fix(web): brand the page titles and give shared links a preview#66
MikkoNumminen merged 1 commit into
masterfrom
fix/branded-titles-and-og

Conversation

@MikkoNumminen

Copy link
Copy Markdown
Owner

The tab said "Feedback situation". That string is the name in a browser tab and in a shared link preview, and it named neither the product nor whose it is. A recruiter with five tabs open has no way to tell which one this was.

Titles now lead with the product

was now
index Feedback situation Feedback Intelligence — Mikko Numminen
desk Feedback — desk entry Desk entry — Feedback Intelligence
saved snapshot Feedback situation — saved snapshot Saved snapshot — Feedback Intelligence

Both locales, and both the static <title> and the runtime pageTitle the page assigns on load.

The h1 keeps its functional wording. Inside the app, "Palautetilanne" is what the heading is describing — identifying the tab is a different job from labelling the view.

The larger gap: there was no link preview at all

Neither page carried og:title, og:description, twitter:card, or even a description meta. The whole head was charset, viewport and title.

That matters more than the wording, because a crawler never runs the script that sets document.title — the static markup is all it ever sees. So a pasted link showed a bare URL with no card.

Both pages now carry description, canonical, Open Graph and Twitter card tags. Saved snapshots get the same treatment and needed it most, being the artefact most likely to end up pasted into a chat or an email.

Canonicals point at the owned domain

index  ->  https://mikkonumminen.dev/feedback
desk   ->  https://mikkonumminen.dev/feedback/desk

Not azurestaticapps.net, so the shared identity is the domain rather than the host. /feedback/desk did not exist — it 404'd — and is added in mikkonumminen.dev as PR #453. The two should land together, or the canonical points at a 404.

No og:image, deliberately

There is no image asset in wwwroot to point at, and a broken og:image previews worse than none. twitter:card is summary rather than summary_large_image for the same reason. Adding a real card image would be a genuine follow-up.

Verification

dotnet build clean, 274 tests pass (170 Api + 79 Llm + 25 Generator).

dist/ is gitignored and rebuilt from wwwroot by tools/publish-frontend.ps1, which copies the HTML verbatim — checked, no head rewriting — and the deploy workflow already triggers on these files. Note it also publishes index.html a second time as demo.html, which inherits the fix.

The tab said "Feedback situation". It is the name in a browser tab and in
a shared link preview, and it named neither the product nor whose it is.
A recruiter with five tabs open has no way to tell which one this was.

Titles now lead with the product:

  index      Feedback situation      -> Feedback Intelligence - Mikko Numminen
  desk       Feedback - desk entry   -> Desk entry - Feedback Intelligence
  snapshot   Feedback situation ...  -> Saved snapshot - Feedback Intelligence

Both locales, and both the static <title> and the runtime pageTitle the
page sets on load. The h1 keeps its functional wording: inside the app,
"Palautetilanne" is what the heading is describing, and that is a
different job from identifying the tab.

The larger gap was that there was no link preview at all. Neither page
carried og:title, og:description, twitter:card or even a description
meta; the head was charset, viewport and title. A crawler never runs the
script that sets document.title, so the static markup was all it ever
saw. Both pages now carry description, canonical, Open Graph and Twitter
card tags.

Saved snapshots get the same treatment and needed it most, being the
artefact most likely to be pasted into a chat or an email.

Canonicals point at mikkonumminen.dev/feedback and /feedback/desk rather
than the azurestaticapps.net host, so the shared identity is the owned
domain. The /feedback/desk route is added in the mikkonumminen.dev repo
and both should land together.

No og:image anywhere: there is no asset to point at, and a broken image
previews worse than none. twitter:card is summary rather than
summary_large_image for the same reason.

dotnet build clean, 274 tests pass.
@MikkoNumminen
MikkoNumminen merged commit e540c4b into master Jul 28, 2026
3 checks passed
@MikkoNumminen
MikkoNumminen deleted the fix/branded-titles-and-og branch July 28, 2026 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant