Skip to content

Upgrade Docsy theme #668

@bupd

Description

@bupd

Summary

The site's core dependencies are significantly outdated. The Docsy theme is 7 minor versions behind (0.7.20.14.3), and Hugo is 22+ minor versions behind
(0.133.00.155.x). Upgrading will bring security fixes, performance improvements, new features, and continued compatibility with the upstream Docsy project.

As far as I reviewed there was quite a few breaking changes introduced in docsy - so its better to go one minor version at a time - so something like 0.7.x to 0.8.x then 0.9 all the way to 0.14.x while we are at it. we should also think about a way to add some UI tests E2E / Snapshot testing to make sure the website actually looks the same and not any major breaking changes that would probably go unnoticed.

@SayakMukhopadhyay can add more of his thoughts on the upgrade process.

Been hearing about this upgrade for the past 6 months no big progress - I wish to take it and work on it.

Current Versions vs Latest

Dependency Current Latest
Docsy theme 0.7.2 0.14.3
Hugo 0.133.0 0.155.x
Node.js 20.16.0 22.x LTS

Why Upgrade

  • Docsy 0.14.x includes navbar improvements, reorganized SCSS, new Markdown alert syntax, improved i18n support (converted from TOML to YAML), and better Hugo
    compatibility.
  • Hugo 0.155.x brings streaming builds, content adapters, improved Tailwind support, LaTeX/TeX rendering, and significant performance improvements.
  • Docsy 0.14.x requires Hugo 0.155.0+, so both must be upgraded together.

Scope of Work

  • Update Hugo version to 0.155.x in netlify.toml, Dockerfile, and verify Makefile picks it up
  • Update Docsy theme from 0.7.2 to 0.14.x in package.json
  • Evaluate switching Docsy installation method from npm to Hugo module (recommended by upstream)
  • Update Node.js version to 22.x LTS in netlify.toml
  • Update remaining npm dependencies (@fortawesome/fontawesome-free, autoprefixer, postcss-cli)
  • Address any breaking changes from Docsy upgrade (SCSS reorganization, i18n TOML→YAML migration)
  • Verify local build and all pages render correctly
  • Update Dockerfile and cloudbuild.yaml if needed

References

/kind feature
/sig contributor-experience

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions