-
Notifications
You must be signed in to change notification settings - Fork 238
[Docs] Replace MkDocs with Zensical #1522
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This reverts commit 17ef196.
for more information, see https://pre-commit.ci
View the example dashboards of the current commit live on PyCafe ☕ 🚀Updated on: 2025-12-18 15:05:04 UTC Compare the examples using the commit's wheel file vs the latest released version: vizro-core/examples/scratch_devView with commit's wheel vs View with latest release vizro-core/examples/dev/View with commit's wheel vs View with latest release vizro-core/examples/visual-vocabulary/View with commit's wheel vs View with latest release vizro-core/examples/tutorial/ |
…izro into docs/zensical-rollout
for more information, see https://pre-commit.ci
for more information, see https://pre-commit.ci
…izro into docs/zensical-rollout
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.
huong-li-nguyen
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I mostly looked at the rendered docs, they look fine 👍
Co-authored-by: Li Nguyen <[email protected]>
petar-qb
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
First of all, I’m impressed by how fast the documentation is built with Zensical!! 🚀
@stichbury, huge thanks for such a quick and smooth migration to Zensical. Really impressive work 🥇 ❤️
I’m not an expert when it comes to documentation tooling and yml/toml files behind it, so this is a humble, high-level review. That said, the docs definitely look and feel better, especially the search experience, and the build times are noticeably faster.
Zensical is still quite new, but it already shows a lot of promise and will likely evolve faster than our previous mkdocs setup.
maxschulz-COL
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
vizro-core/hatch.toml
Outdated
| pip = '"{env:HATCH_UV}" pip {args}' | ||
| pycafe-links = "../tools/pycafe/docs_links_filtering.sh" | ||
| serve = "mkdocs serve --open {args}" | ||
| serve = "zensical serve --open" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I naively tried to run this locally, and it gives me the following error:
hatch run docs:serve
Serving /Users/Maximilian_Schulz/Documents_no_backup/Python/Vizro/vizro/vizro-core/site on http://localhost:8000
Build started
Error: AttributeError: Failed to initiate extension 'mkdocstrings': module 'mkdocstrings' has no attribute 'makeExtension
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You will be able to run locally but still need the mkdocstrings package as a dependency.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does that mean? Do I need to install it manually? Should this not work with the hatch command?
…rk but aren't rejected)
for more information, see https://pre-commit.ci
…izro into docs/zensical-rollout
@maxschulz-COL My friend, Cursor, and I have worked on this. This is the analysis:
I have prevailed on Cursor to make content changes across the docs to accommodate this issue, and they are all in a single commit. |
maxschulz-COL
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we are still not there, see comments
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Many of the settings here are shuffled around, why is that? Makes it a little harder to review to see what is new and what just changed place
vizro-core/hatch.toml
Outdated
| pip = '"{env:HATCH_UV}" pip {args}' | ||
| pycafe-links = "../tools/pycafe/docs_links_filtering.sh" | ||
| serve = "mkdocs serve --open {args}" | ||
| serve = "zensical serve --open" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does that mean? Do I need to install it manually? Should this not work with the hatch command?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
|
|
||
| # Strictest settings possible, and will be elevated to ERROR when run with --strict. | ||
| # See https://www.mkdocs.org/user-guide/configuration/#validation. | ||
| # Keep these for now as strict building will be enabled by Zensical soon |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we not also keep the old comment?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think we need it -- we aren't explaining all the other settings in the file and some of those are far less evident from their naming.
|
Setting this PR aside for now. Note that I reverted this commit (e6078819773f90d740f0172d37668669eb0d646b) to deal with the fact that autorefs is not supported. It means that API refdocs aren't correctly linked, but we should ideally hold out for that support to be added before we adopt Zensical. The other ideals would be:
|



Closes https://github.com/McK-Internal/vizro-internal/issues/2316 by transitioning Vizro, Vizro-MCP and Vizro-AI docs over from MkDocs to Zensical.
Description
Ready for review! You can see the builds on RtD:
While I have created a new
zensical.tomlfile (rather than just use the existingmkdocs.yml) we have had to revert to use themkdocs.ymlfor now because of an issue with PyCafe. I will update as soon as the fix is in place from Zensical because using the toml format means we can pick up new features as they're added.The settings are almost identical, but I added the feature
header.autohideto increase viewport when scrolling down the page and added the featurenavigation.pathfor breadcrumbs. We also now have light/dark theme support.Issues
(a) There are some unsupported settings which we used -- like
strictbuilding. I think this is important but it's not here, so that means we could break an internal link and it won't be flagged. That's not ideal IMO but we may be able to catch these with a linkchecker instead, and it's in the backlog for Zensical to provide it.(b)
PyCafe isn't working at present but I have identified the reason (probably) and raised an issue. Resolved by usingmkdocs.ymlwhile awaiting fix for the issue.(c)
The llms-md buttons aren't working at present and that's another priority to investigate. Now fixedScreenshot
Notice
I acknowledge and agree that, by checking this box and clicking "Submit Pull Request":