Skip to content

Footer backlink to the author's blog, with author and social profile markup - #70

Merged
jbspeakr merged 5 commits into
mainfrom
claude/project-thread-tg9xa3
Oct 22, 2026
Merged

jbspeakr merged 5 commits into
mainfrom
claude/project-thread-tg9xa3

Conversation

@jbspeakr

@jbspeakr jbspeakr commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Requested by Jan · project thread

What this changes

Jan asked for a backlink to janbrennenstuhl.eu at a strategic position, then for semantic author markup and author links to Mastodon and Bluesky.

The spot. The footer statement, which is on every page. It used to say "run by Let's Auth Labs"; it now says "run by Jan Brennenstuhl". So the link sits inside a sentence about the lab, with the name as anchor text, on every page of the site. The lab name still appears in the copyright line below. The About page already links the same site in "Who is behind it" and in the contact panel, so it needs no change.

The link. A plain followed link with rel="author": no nofollow, no noopener (same tab, so it is not needed). It uses OPERATOR.site from src/lib/site.ts, so the imprint, About and the footer share one URL (https://www.janbrennenstuhl.eu/).

Author markup. Every page's <head> now has:

  • <meta name="author"> and <link rel="author"> to the blog.
  • <link rel="me"> to the Mastodon profile (infosec.exchange/@jbspeakr) and the Bluesky profile (janbrennenstuhl.eu), so Mastodon can verify letsauth.eu once it is in the profile fields.
  • <meta name="fediverse:creator" content="@jbspeakr@infosec.exchange">, which makes Mastodon show the author on link previews (once letsauth.eu is allowed in the account's author attribution setting).
  • A schema.org JSON-LD block: a WebSite whose author is the Person (with both profiles as sameAs) and whose publisher is the Organization (Let's Auth Labs) with that person as founder.

The profiles live in OPERATOR in src/lib/site.ts. The budget check already skips JSON-LD, so no JavaScript budget moves. The lines sit away from the og:image line #69 changes, to keep the two PRs from conflicting.

The style. --ink text with a quiet --rule-strong underline that turns to the text colour on hover. Only existing tokens.

It does not touch the page head component (header.page-head) or the spec entry pages (#69 and the standards entry-page rework).

Screenshots

Footer of the home page from astro preview. The head markup is invisible.

Before (main) After
desktop, light
desktop, dark
phone, light
phone, dark

The screenshots were committed once for stable URLs and removed in the next commit, so the squashed diff has no images.

Code checklist

  • pnpm check passes, and the enforced budgets pass.
  • Pages still read fully without JavaScript. No JavaScript added.
  • Both themes and phone width checked (screenshots above).
  • Screenshot baselines are viewport-only and do not reach the footer, so none should need a refresh.

🤖 Generated with Claude Code

https://claude.ai/code/session_01JSDnPUVBtyXp8DT2mfwJiS

The footer statement on every page now names the person who runs the lab and links
their personal site, as a plain followed link with a quiet underline in the footer's inks.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JSDnPUVBtyXp8DT2mfwJiS
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JSDnPUVBtyXp8DT2mfwJiS
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JSDnPUVBtyXp8DT2mfwJiS
@jbspeakr jbspeakr self-assigned this Oct 22, 2026
meta author, link rel=author, rel=author on the footer link, and a schema.org JSON-LD
block naming the site's author and its publishing lab. JSON-LD is not script the budgets count.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JSDnPUVBtyXp8DT2mfwJiS
@jbspeakr jbspeakr changed the title Footer: link the author's blog from the statement on every page Footer backlink to the author's blog, with author markup in the head Oct 22, 2026
rel=me links for profile verification, fediverse:creator for Mastodon's author attribution
on link previews, and both profiles as sameAs on the author in the JSON-LD.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JSDnPUVBtyXp8DT2mfwJiS
@jbspeakr jbspeakr changed the title Footer backlink to the author's blog, with author markup in the head Footer backlink to the author's blog, with author and social profile markup Oct 22, 2026
@jbspeakr
jbspeakr merged commit df9b361 into main Oct 22, 2026
1 check passed
@jbspeakr
jbspeakr deleted the claude/project-thread-tg9xa3 branch October 22, 2026 21:36
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.

2 participants