Skip to content

docs: custom-experiments guide, earthy brand theme + SEO, planning refresh - #10

Merged
rgutzen merged 5 commits into
Lindsay-Lab:mainfrom
rgutzen:dev
Jul 3, 2026
Merged

docs: custom-experiments guide, earthy brand theme + SEO, planning refresh#10
rgutzen merged 5 commits into
Lindsay-Lab:mainfrom
rgutzen:dev

Conversation

@rgutzen

@rgutzen rgutzen commented Jul 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

Documentation-only changes across three areas (3 commits, docs/ only — no library/runtime code touched).

1. New guide — Custom Experiments (user-guide/custom-experiments.md)

  • How to define an experiment in config_experiments.yaml (parameter / data_loader / data_args / optional status) and run it via the train/test/plot_model_variations rules.
  • Grounded in the real config schema + snake_experiments.smk; verified the referenced Stimulus*DataLoader classes exist.
  • Explains the experiment vs. category (model-attribute sweep) distinction, a worked "flash" example, tabbed run commands, output paths, and a checklist.
  • Promoted from the "planned guides" list and wired into the How-to nav.

2. Earthy brand theme + SEO

  • All colours defined in HSL. Default header now dark moss-green (was indigo); Diátaxis quadrant headers retuned to muted earthy tones (sage / ochre / slate / teal), all WCAG AA with white text.
  • Brand amber is the global link/hover accent in both light and dark schemes; brand purple added as a secondary accent. Dark mode no longer falls back to Material blue (primary/accent: custom).
  • SEO: site_name set, expanded description, Open Graph + Twitter Card + keywords + theme-color + canonical URL in overrides/main.html; redundant header wordmark hidden (logo carries it).

3. MathJax self-hosting + polyfill removal

  • Dropped the compromised polyfill.io reference; self-hosted MathJax config (docs/javascripts/mathjax.js) with the CDN as the only external JS dependency.

Planning docs refresh

  • Removed completed todo-roadmap.md (changelog) and shipped todo-release-0.1.md.
  • Added todo-development.md — forward-looking roadmap of planned toolbox improvements (Python 3.12/3.13, config-driven transforms, provenance logging, config-snapshot isolation, memory-efficient plotting, broader tests, naming cleanup).
  • Trimmed todo-docs.md to the live doc gaps; updated development/index.md links/counts.

Verification

  • Clean mkdocs build -f docs/mkdocs.yml from repo root — no link warnings.
  • Quadrant colours + moss-green header visually verified via headless-Chrome screenshots (dark mode, all 4 quadrants).

Note

Merging may require a token with workflow scope, since a push to main triggers the docs deploy workflow. If the CLI merge is blocked, merge via the web UI.

rgutzen added 3 commits July 3, 2026 09:23
polyfill.io was sold and served malware (2024 supply-chain attack) and is
unnecessary for modern browsers. Switch MathJax CDN to unpkg and add a local
mathjax.js configuring arithmatex output + re-typeset on navigation.
Colour scheme (defined in HSL):
- Default header (Home/About) now dark moss-green instead of indigo blue.
- Diátaxis quadrant headers retuned to muted, earthy, brand-adjacent tones:
  Tutorials sage-green, How-to warm ochre, Reference slate, Explanation teal.
  All pass WCAG AA (>=4.5:1) with white header text.
- Brand amber #CF8A2A is the global link/hover accent in both light and dark
  schemes (light uses a deeper amber for AA link contrast); brand purple
  #672E6B added as a secondary accent (header keyline, ==mark==, active ToC).
- Dark mode no longer falls back to Material's blue: primary/accent set to
  'custom' and re-pointed to the brand palette for the slate scheme.

SEO:
- site_name set to 'DynVision' (was empty) so <title>/og:site_name populate;
  redundant header wordmark hidden via CSS (logo already carries it).
- Expanded site_description; added Open Graph + Twitter Card meta, keywords,
  theme-color, and canonical URL in overrides/main.html.
- Add user-guide/custom-experiments.md: how to define an experiment in
  config_experiments.yaml and run it via the *_model_variations rules
  (grounded in the real config schema + snake_experiments.smk). Promoted
  from the 'planned guides' list and wired into the How-to nav.
- Replace the completed todo-roadmap.md changelog with a forward-looking
  todo-development.md tracking planned toolbox improvements (Python 3.12/13,
  config-driven transforms, provenance logging, config-snapshot isolation,
  memory-efficient plotting, broader tests, naming cleanup), derived from
  the design notes in development/planning/.
- Trim todo-docs.md down to the live doc gaps (drop resolved changelog).
- Remove todo-release-0.1.md (release shipped) and todo-roadmap.md (complete).
- Update development/index.md links/counts to point at todo-development.md.

Clean mkdocs build from repo root; no link warnings.
Copilot AI review requested due to automatic review settings July 3, 2026 09:01

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Documentation-only update that expands the user guide with a new “Custom Experiments” walkthrough, refreshes the MkDocs Material visual theme to an earthy brand palette, improves SEO/social metadata, and updates/reshapes planning docs under docs/development/.

Changes:

  • Added a new user guide page explaining how to define/run experiment configs and category sweeps via Snakemake.
  • Updated docs theming (HSL-based palette, quadrant headers, brand accents) and added SEO/OpenGraph/Twitter metadata.
  • Switched MathJax setup to a local config + CDN script and refreshed planning/roadmap documentation structure.

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
docs/user-guide/index.md Adds the new Custom Experiments guide to the user-guide index.
docs/user-guide/custom-experiments.md New guide describing experiment/category configuration and Snakemake usage.
docs/stylesheets/diataxis.css Implements the earthy palette, global accents, quadrant header theming, and header wordmark handling.
docs/overrides/main.html Adds canonical/keywords/theme-color + Open Graph/Twitter card metadata.
docs/mkdocs.yml Sets site_name, updates theme palette to custom, adds MathJax JS config, and rewires planning nav.
docs/javascripts/mathjax.js Adds a self-hosted MathJax configuration and re-typeset hook for navigation.
docs/development/planning/todo-roadmap.md Removes the completed roadmap/changelog planning doc.
docs/development/planning/todo-release-0.1.md Removes the release-prep roadmap doc.
docs/development/planning/todo-docs.md Trims to a smaller set of current doc gaps and updates contributor notes.
docs/development/planning/todo-development.md Adds a new toolbox-focused development roadmap document.
docs/development/index.md Updates links and descriptions to match the new planning doc structure.

Comment thread docs/user-guide/custom-experiments.md Outdated
Comment on lines +58 to +61
!!! tip "Timestep budget"
For most presentation loaders the timeline is `intro + stim + idle` and
should match `dsteps`. Keep them consistent so the stimulus window falls
where you expect within the recorded response.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

idle is used for the initial unrecorded simulation time with null input before dsteps/tsteps start counting

Comment thread docs/user-guide/custom-experiments.md Outdated
Comment thread docs/user-guide/custom-experiments.md Outdated
Comment on lines +137 to +138
snakemake test_model_variations --config category=rctype experiment=flash \
--allowed-rules test_model process_test_data

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

update suggestions

Comment thread docs/stylesheets/diataxis.css
Comment thread docs/stylesheets/diataxis.css
Comment thread docs/javascripts/mathjax.js
Comment thread docs/development/planning/todo-docs.md Outdated
Comment on lines +18 to +20
- ⬜ **Custom experiments** — how to define a new entry in
`config_experiments.yaml` and run it via the `*_model_variations` rules.
*(added 2026-07-03: [Custom Experiments guide](../../user-guide/custom-experiments.md))*
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 11 out of 11 changed files in this pull request and generated 9 comments.

Comment thread docs/user-guide/custom-experiments.md Outdated
Comment thread docs/user-guide/custom-experiments.md Outdated
Comment thread docs/user-guide/custom-experiments.md Outdated
Comment thread docs/user-guide/custom-experiments.md Outdated
Comment thread docs/user-guide/custom-experiments.md Outdated
Comment thread docs/stylesheets/diataxis.css Outdated
Comment thread docs/javascripts/mathjax.js
Comment thread docs/development/planning/todo-docs.md Outdated
Comment thread docs/development/index.md
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
@rgutzen
rgutzen merged commit e88180d into Lindsay-Lab:main Jul 3, 2026
8 checks passed
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