Bump the Hugo module path to /v3, adopt a rolling latest-4 Hugo
version window (bot keeps it sliding), document new opt-in params,
and set package version to 3.0.0.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* Add reading progress bar for articles
* Let page-level showReadingProgress override the site setting
Hugo's default treats false as empty, so a page-level false could not
disable the bar once it was enabled site-wide. Resolve the value by
initialising from the site setting and overriding it only when the
front matter parameter is actually present, and use the same resolved
boolean in single.html and head.html.
* Guard the reading progress handler and mark the listener passive
The script loads in the head without defer, so the scroll listener is
registered before the progress bar element exists. A scroll event fired
during parsing, such as when the browser restores the scroll position on
reload, would throw. Bail out when the element is missing, matching the
guard in background-blur.js, and mark the scroll listener passive as
toc.html already does.
Resolve conflicts in icon sample pages by adopting upstream's {{< icon-ref >}}
shortcode, which dynamically generates the icon table.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Resolve conflicts in icon sample pages by adopting upstream's {{< icon-ref >}}
shortcode, which dynamically generates the icon table (replacing the static
table the PR had added strava to).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add thumbnailAspectRatio site parameter (default '1.5')
- Use decimal values instead of fractions for Hugo compatibility
- Sanitize user input to extract only numeric characters
- Apply to article cards, related cards, and term cards
- Update both source and compiled CSS
Closes#2839
In Hugo v0.132.0, the Goldmark passthrough extension was introduced to preserve raw Markdown text within designated delimiters, ensuring that MathJax or KaTeX can render formulas correctly. With this configuration in place, you no longer need to manually escape characters inside math expressions (for example, \\ → \\\\ or x_y → x\_y).
According the official document of Hugo:
- [mathematics/#step-1](https://gohugo.io/content-management/mathematics/#step-1)
- [Passthrough render hooks](https://gohugo.io/render-hooks/passthrough/)
Add `defaultSocialImage` as the default image for social media sharing. This feature would be useful for users who don’t want to specify an image for every article. This PR also resolves the issue where the homepage missing an image when shared.