Skip to content

Restyle the guide with a swappable ND Studio-inspired preset - #1

Merged
Cybonto merged 1 commit into
masterfrom
style/ndstudio
Oct 5, 2026
Merged

Cybonto merged 1 commit into
masterfrom
style/ndstudio

Conversation

@Cybonto

@Cybonto Cybonto commented Oct 5, 2026

Copy link
Copy Markdown
Collaborator

Layer a token-driven stylesheet over Just the Docs, inspired by ndstudio.gov: white page, near-black ink, square corners, hairline rules, tight tracking, one blue link colour, plus a dark theme. No logos, images or font files are copied from that site.

  • Theme presets in docs/_data/themes (ndstudio, classic). A preset is a flat list of tokens; head_custom.html emits them as --nd-* CSS variables for light and dark, and all site CSS in docs/_sass/custom/nd reads only those variables.
  • Light/dark button at the top right of the side menu (assets/js/theme-toggle.js); the choice is saved in this browser, otherwise the site follows the device setting.
  • GSA emblem, small and centred above the site name at every screen width (title.html; seal, seal_alt in _config.yml and the seal-size token); note in the sidebar footer saying the guide is a GSA open source project under the GSA Open Source Policy.
  • Dark-mode treatment for code, callouts and the copy button; the pipeline figure keeps its own light background.
  • Home page headline and lede use the display style.
  • New page contributing/styling.md explains how to make a preset; .github/scripts/ check_theme.py checks WCAG AA contrast in both themes, token parity across presets, and that the stylesheet holds no literal colours. Linked from Contributing and Tooling.

The stylesheet stays plain old-style SCSS (no @use, no mixins) because the Pages build uses an old Sass. site check: unchanged (23 R11 errors about missing generated slide images were already present); tests: unchanged (1788 of 1789 pass, 1 skipped).

Layer a token-driven stylesheet over Just the Docs, inspired by ndstudio.gov: white
page, near-black ink, square corners, hairline rules, tight tracking, one blue link
colour, plus a dark theme. No logos, images or font files are copied from that site.

- Theme presets in docs/_data/themes (ndstudio, classic). A preset is a flat list of
  tokens; head_custom.html emits them as --nd-* CSS variables for light and dark, and
  all site CSS in docs/_sass/custom/nd reads only those variables.
- Light/dark button at the top right of the side menu (assets/js/theme-toggle.js);
  the choice is saved in this browser, otherwise the site follows the device setting.
- GSA emblem, small and centred above the site name at every screen width (title.html;
  `seal`, `seal_alt` in _config.yml and the `seal-size` token); note in the sidebar
  footer saying the guide is a GSA open source project under the GSA Open Source Policy.
- Dark-mode treatment for code, callouts and the copy button; the pipeline figure keeps
  its own light background.
- Home page headline and lede use the display style.
- New page contributing/styling.md explains how to make a preset; .github/scripts/
  check_theme.py checks WCAG AA contrast in both themes, token parity across presets,
  and that the stylesheet holds no literal colours. Linked from Contributing and Tooling.

The stylesheet stays plain old-style SCSS (no @use, no mixins) because the Pages build
uses an old Sass. site check: unchanged (23 R11 errors about missing generated slide
images were already present); tests: unchanged (1788 of 1789 pass, 1 skipped).
@Cybonto Cybonto self-assigned this Oct 5, 2026
@Cybonto
Cybonto merged commit eb449e1 into master Oct 5, 2026
3 checks passed
@Cybonto
Cybonto deleted the style/ndstudio branch October 5, 2026 16:18

This branch was successfully deployed

1 active deployment
github-pages — c3e39eb3 Deployed Oct 5, 2026 by Cybonto via deploy #25
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