Skip to content

feat(docs): apply maintainer house style to the VitePress docs site#186

Merged
PatrickRitchie merged 9 commits into
TrakHound:masterfrom
ottobolyos:feat/docs-ui-style
Jun 3, 2026
Merged

feat(docs): apply maintainer house style to the VitePress docs site#186
PatrickRitchie merged 9 commits into
TrakHound:masterfrom
ottobolyos:feat/docs-ui-style

Conversation

@ottobolyos
Copy link
Copy Markdown
Contributor

@ottobolyos ottobolyos commented Jun 2, 2026

Summary

This PR lands the docs-site house-style choices @PatrickRitchie confirmed in #184:

  • The maintainer-supplied logo (docs/img/mtconnect-net-03-md.png) is copied into docs/public/ and wired through themeConfig.logo. The image already carries the 'mtconnect .NET' wordmark, so themeConfig.siteTitle is hidden to avoid the wordmark rendering twice in the top nav.
  • The VitePress brand palette is overridden so --vp-c-brand-1 resolves to #0073e6, the TrakHound accent. Light and dark variants are generated from the same hue.
  • The landing hero gains a third call-to-action -- 'Download latest release' -- linking to the GitHub releases page. It sits between 'Get started' and 'View on GitHub' so the download is more prominent than the GitHub-source link.
  • A favicon link and the Open Graph / Twitter Card meta block both point at /logo.png so social previews render correctly.
  • The existing theme-color meta tag is updated from #1f6feb to #0073e6 so mobile browser chrome matches the new brand color.

Typography and the code-block syntax theme are unchanged, per the maintainer's preference. Google Analytics is out of scope -- the maintainer is wiring that himself.

Files changed

  • docs/public/logo.png -- copied from docs/img/mtconnect-net-03-md.png.
  • docs/.vitepress/config.ts -- logo, siteTitle: false, favicon link, Open Graph / Twitter Card meta, theme-color updated to #0073e6.
  • docs/.vitepress/theme/index.ts -- theme entry that extends the default theme and loads the brand-palette override.
  • docs/.vitepress/theme/style.css -- #0073e6 brand-palette override, with per-mode shades for light and dark.
  • docs/index.md -- adds the 'Download latest release' hero action.
  • docs/development/house-style.md -- records the house-style decisions from Discussion Docs site UI style—logo, color palette, type scale: what house style should the site adopt? #184 (typography, code-block theme, analytics scope).
  • tests/MTConnect.NET-Docs-Tests/RouteCheckTests.cs -- extends the docs route-check suite with assertions covering the landing-page hero surfaces introduced by this PR (logo, CTA wording, brand-color meta, Open Graph tags).

Verification

  • npm run build (vitepress build) is green; the generated HTML carries #0073e6 in the CSS bundle, /logo.png in the <link rel="icon">, og:image / twitter:image pointing at /logo.png, and theme-color="#0073e6".
  • dotnet build is green; dotnet test (docs-tests project) is green on the extended RouteCheckTests suite.

Closes #184.

ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
The doc-comments commit on MTConnect-Compliance-Tests shifted the line
of the FixtureDirEnv read in CppAgentParityWorkflowTests.cs from 488 to
499. The generated page embeds source line numbers, so the change
desynced docs/reference/environment-variables.md and the in-sync test
in MTConnect.NET-Docs-Tests failed on every integration branch layered
on top of this PR (TrakHound#185, TrakHound#186).
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
The doc-comments commit on MTConnect-Compliance-Tests shifted the line
of the FixtureDirEnv read in CppAgentParityWorkflowTests.cs from 488 to
499. The generated page embeds source line numbers, so the change
desynced docs/reference/environment-variables.md and the in-sync test
in MTConnect.NET-Docs-Tests failed on every integration branch layered
on top of this PR (TrakHound#185, TrakHound#186).
@ottobolyos ottobolyos force-pushed the feat/docs-ui-style branch from 06b260a to 4e6e542 Compare June 2, 2026 19:24
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
…swers

PR TrakHound#186 implements the maintainer's docs-site house-style choices from
Discussion TrakHound#184. Without a ledger page, a future contributor proposing
a palette / logo / typography change has no canonical place to look up
which choices the maintainer signed off on.

Add `docs/development/house-style.md` with one row per surface (logo,
accent color, typography, hero block, syntax theme, favicon, social-
share preview, theme-color meta, Google Analytics), citing Discussion
TrakHound#184 as the source of record. Wire the page into the `/development/`
sidebar between 'Documentation site' and 'Release builder' so it sits
alongside the existing build-side docs.
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
PR TrakHound#186 wires the maintainer-confirmed house-style choices from
Discussion TrakHound#184 — the brand logo, the #0073e6 accent color, the
favicon, the OG / Twitter Card meta block, and the 'Download latest
release' hero CTA — but nothing on the test side asserts those
surfaces survive a future theme refactor.

Add `Landing_Page_Carries_The_House_Style_Surfaces` to the existing
RouteCheckTests Playwright fixture. The test navigates the homepage,
extracts the theme-color meta, favicon href + type, og:title +
og:image, twitter:card + twitter:image, the nav <img> rendered by
themeConfig.logo, and the hero CTA href, then pins each one against
its expected value. The favicon path is also fetched over HTTP so a
stale href that 404s is caught — the meta-tag presence check alone
would not surface that.

The test reuses the fixture's preview server and browser context, so
the only cost is one extra navigation in the existing Category=E2E
leg. Failure messages name the missing surface directly rather than
forcing the reader into a snapshot diff.
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
…swers

PR TrakHound#186 implements the maintainer's docs-site house-style choices from
Discussion TrakHound#184. Without a ledger page, a future contributor proposing
a palette / logo / typography change has no canonical place to look up
which choices the maintainer signed off on.

Add `docs/development/house-style.md` with one row per surface (logo,
accent color, typography, hero block, syntax theme, favicon, social-
share preview, theme-color meta, Google Analytics), citing Discussion
TrakHound#184 as the source of record. Wire the page into the `/development/`
sidebar between 'Documentation site' and 'Release builder' so it sits
alongside the existing build-side docs.
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 2, 2026
PR TrakHound#186 wires the maintainer-confirmed house-style choices from
Discussion TrakHound#184 — the brand logo, the #0073e6 accent color, the
favicon, the OG / Twitter Card meta block, and the 'Download latest
release' hero CTA — but nothing on the test side asserts those
surfaces survive a future theme refactor.

Add `Landing_Page_Carries_The_House_Style_Surfaces` to the existing
RouteCheckTests Playwright fixture. The test navigates the homepage,
extracts the theme-color meta, favicon href + type, og:title +
og:image, twitter:card + twitter:image, the nav <img> rendered by
themeConfig.logo, and the hero CTA href, then pins each one against
its expected value. The favicon path is also fetched over HTTP so a
stale href that 404s is caught — the meta-tag presence check alone
would not surface that.

The test reuses the fixture's preview server and browser context, so
the only cost is one extra navigation in the existing Category=E2E
leg. Failure messages name the missing surface directly rather than
forcing the reader into a snapshot diff.
@ottobolyos ottobolyos force-pushed the feat/docs-ui-style branch from 4ffde0e to 7aa25d1 Compare June 2, 2026 22:51
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 3, 2026
…swers

PR TrakHound#186 implements the maintainer's docs-site house-style choices from
Discussion TrakHound#184. Without a ledger page, a future contributor proposing
a palette / logo / typography change has no canonical place to look up
which choices the maintainer signed off on.

Add `docs/development/house-style.md` with one row per surface (logo,
accent color, typography, hero block, syntax theme, favicon, social-
share preview, theme-color meta, Google Analytics), citing Discussion
TrakHound#184 as the source of record. Wire the page into the `/development/`
sidebar between 'Documentation site' and 'Release builder' so it sits
alongside the existing build-side docs.
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 3, 2026
PR TrakHound#186 wires the maintainer-confirmed house-style choices from
Discussion TrakHound#184 — the brand logo, the #0073e6 accent color, the
favicon, the OG / Twitter Card meta block, and the 'Download latest
release' hero CTA — but nothing on the test side asserts those
surfaces survive a future theme refactor.

Add `Landing_Page_Carries_The_House_Style_Surfaces` to the existing
RouteCheckTests Playwright fixture. The test navigates the homepage,
extracts the theme-color meta, favicon href + type, og:title +
og:image, twitter:card + twitter:image, the nav <img> rendered by
themeConfig.logo, and the hero CTA href, then pins each one against
its expected value. The favicon path is also fetched over HTTP so a
stale href that 404s is caught — the meta-tag presence check alone
would not surface that.

The test reuses the fixture's preview server and browser context, so
the only cost is one extra navigation in the existing Category=E2E
leg. Failure messages name the missing surface directly rather than
forcing the reader into a snapshot diff.
@ottobolyos ottobolyos force-pushed the feat/docs-ui-style branch from b580b37 to dc30a60 Compare June 3, 2026 00:03
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 3, 2026
The CSS-variable comment named the maintainer-supplied brand value
'colour' (British spelling), which is inconsistent with the AmE
register used throughout the committed source. The value itself
(`#0073e6`) was already AmE-correct; only the comment wording is
adjusted here. No behavioural change.
…swers

PR TrakHound#186 implements the maintainer's docs-site house-style choices from
Discussion TrakHound#184. Without a ledger page, a future contributor proposing
a palette / logo / typography change has no canonical place to look up
which choices the maintainer signed off on.

Add `docs/development/house-style.md` with one row per surface (logo,
accent color, typography, hero block, syntax theme, favicon, social-
share preview, theme-color meta, Google Analytics), citing Discussion
TrakHound#184 as the source of record. Wire the page into the `/development/`
sidebar between 'Documentation site' and 'Release builder' so it sits
alongside the existing build-side docs.
PR TrakHound#186 wires the maintainer-confirmed house-style choices from
Discussion TrakHound#184 — the brand logo, the #0073e6 accent color, the
favicon, the OG / Twitter Card meta block, and the 'Download latest
release' hero CTA — but nothing on the test side asserts those
surfaces survive a future theme refactor.

Add `Landing_Page_Carries_The_House_Style_Surfaces` to the existing
RouteCheckTests Playwright fixture. The test navigates the homepage,
extracts the theme-color meta, favicon href + type, og:title +
og:image, twitter:card + twitter:image, the nav <img> rendered by
themeConfig.logo, and the hero CTA href, then pins each one against
its expected value. The favicon path is also fetched over HTTP so a
stale href that 404s is caught — the meta-tag presence check alone
would not surface that.

The test reuses the fixture's preview server and browser context, so
the only cost is one extra navigation in the existing Category=E2E
leg. Failure messages name the missing surface directly rather than
forcing the reader into a snapshot diff.
@ottobolyos ottobolyos force-pushed the feat/docs-ui-style branch from dc30a60 to 34e6bba Compare June 3, 2026 04:44
@ottobolyos ottobolyos marked this pull request as ready for review June 3, 2026 06:30
@PatrickRitchie PatrickRitchie merged commit 63b3bb3 into TrakHound:master Jun 3, 2026
3 checks passed
@github-project-automation github-project-automation Bot moved this from In Progress to Done in MTConnect.NET-Development Jun 3, 2026
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 3, 2026
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 3, 2026
ottobolyos added a commit to ottobolyos/mtconnect.net that referenced this pull request Jun 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

2 participants