This PR contains the following updates:
| Package | Change | [Age](https://docs.renovatebot.com/merge-confidence/) | [Confidence](https://docs.renovatebot.com/merge-confidence/) |
|---|---|---|---|
| [zensical](https://github.com/zensical/zensical) ([changelog](https://zensical.org/docs/changelog/)) | `^0.0.57` → `^0.0.66` |  |  |
---
> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/10) for more information.
---
### Release Notes
<details>
<summary>zensical/zensical (zensical)</summary>
### [`v0.0.66`](https://github.com/zensical/zensical/releases/tag/v0.0.66): 0.0.66
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.65...v0.0.66)
#### Summary
This version adds compatibility with `mkdocs-autoapi` and `mkdocs-api-autonav`, making it easier to document Python projects. These plugins discover modules and packages, generate API reference pages, and organize them in your site's navigation. They build on `mkdocstrings`, which renders the reference content from your code and docstrings, so you can skip manually creating a page for each module.
It also fixes responsive image URLs in raw HTML, ensures sitemaps include all published pages, and adds support for custom InlineHilite formatters configured through TOML.
Additionally, the [user interface is updated to v0.0.33](https://github.com/zensical/ui/releases/tag/v0.0.33), adding styling for `mkdocstrings` backlinks in both themes, restoring GLightbox styles after instant navigation, respecting custom Mermaid node label colors, and fixing the `/` search shortcut.
#### Changelog
##### Features
- [`b2f4de7`](b2f4de7) **zensical**, **compat** – support mkdocs-autoapi and mkdocs-api-autonav plugins
##### Bug fixes
- [`3d8c0e2`](3d8c0e2) **ui** – update ui to v0.0.33
- [`7be3d1d`](7be3d1d) **compat** – resolve custom inline formatters in TOML configuration ([#​980](https://github.com/zensical/zensical/issues/980))
- [`e3099ab`](e3099ab) **zensical**, **compat** – include all published pages in sitemap ([#​977](https://github.com/zensical/zensical/issues/977))
- [`e24d0fc`](e24d0fc) **compat** – resolve raw HTML srcset URLs relative to Markdown source ([#​975](https://github.com/zensical/zensical/issues/975))
### [`v0.0.65`](https://github.com/zensical/zensical/releases/tag/v0.0.65): 0.0.65
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.64...v0.0.65)
#### Summary
This version expands MkDocs compatibility with a native replacement for the `rss` plugin and support for mkdocstrings backlinks. Zensical can now generate RSS 2.0 and JSON Feed 1.1 feeds for created and updated pages. Python API documentation can also show which pages reference a documented object, with backlinks kept current across cached builds.
#### Changelog
##### Features
- [`e7876ab`](e7876ab) **zensical**, **compat** – support mike's `version_selector` setting
- [`25b95e9`](25b95e9) **zensical**, **compat** – support mkdocstrings' `enable_inventory` setting
- [`0223fc9`](0223fc9) **compat** – support more macros settings
- [`acee89a`](acee89a) **zensical**, **compat** – support autorefs settings
- [`0291923`](0291923) **zensical**, **compat** – support mkdocstrings backlinks
- [`c214988`](c214988) **zensical**, **compat** – add `rss` plugin replacement ([#​443](https://github.com/zensical/zensical/issues/443))
##### Bug fixes
- [`cf68f6d`](cf68f6d) **zensical**, **compat** – resolve source links to published post URLs ([#​966](https://github.com/zensical/zensical/issues/966))
### [`v0.0.64`](https://github.com/zensical/zensical/releases/tag/v0.0.64): 0.0.64
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.63...v0.0.64)
#### Summary
Many of you have been waiting for this one: Zensical now includes native blog support. As a direct port of the Material for MkDocs blog plugin, it preserves the familiar configuration, metadata, URLs, archives, categories, authors, pagination, and more. We're happy to finally put it into your hands, with more flexible blogging functionality planned for the future.
#### Changelog
##### Features
- [`5825381`](5825381) **zensical**, **compat**, **ui** – add `blog` plugin replacement
##### Bug fixes
- [`a85875e`](a85875e) **ui** – update ui to v0.0.32
### [`v0.0.63`](https://github.com/zensical/zensical/releases/tag/v0.0.63): 0.0.63
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.62...v0.0.63)
#### Summary
This version ensures pages containing snippets rebuild when source files change during local preview and excludes hidden files and directories from the generated site. It also fixes preview-site root redirects and returns proper 404 responses while preserving custom error pages.
Additionally, the [user interface] is updated to [v0.0.31], fixing empty submenus for sections containing only an index page and improving task list checkbox sizing and alignment in the modern theme. It also updates dependencies and adds 60 new icons across Lucide, Octicons, and Simple Icons.
[user interface]: https://github.com/zensical/ui
[v0.0.31]: https://github.com/zensical/ui/releases/tag/v0.0.31
#### Changelog
##### Bug fixes
- [`a771962`](a771962) **ui** – update ui to v0.0.31
- [`dfe8f94`](dfe8f94) **zensical** – rebuild pages containing snippets on source changes ([#​950](https://github.com/zensical/zensical/issues/950))
- [`d6cd5d5`](d6cd5d5) **zensical**, **zensical-serve** – append trailing slash to preview site root ([#​944](https://github.com/zensical/zensical/issues/944))
- [`2070bf1`](2070bf1) **zensical**, **compat** – don't add dotfiles to final site ([#​945](https://github.com/zensical/zensical/issues/945))
### [`v0.0.62`](https://github.com/zensical/zensical/releases/tag/v0.0.62): 0.0.62
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.61...v0.0.62)
#### Summary
This version adds support for the [mkdocs-callouts] plugin, which renders Obsidian-style callouts as admonitions. It also improves compatibility with existing MkDocs projects by accepting more plugin settings and fixes builds when the project configuration file is included in `watch`.
Additionally, the [user interface] is updated to [v0.0.30], ensuring that anchor links reveal targets inside collapsed details, content tabs, and annotations – including deeply nested combinations – before scrolling to them.
[mkdocs-callouts]: https://github.com/sondregronas/mkdocs-callouts
[user interface]: https://github.com/zensical/ui
[v0.0.30]: https://github.com/zensical/ui/releases/tag/v0.0.30
#### Changelog
##### Features
- [`d8fbb05`](d8fbb05) **compat** – support mkdocs-callouts plugin by enabling pymdownx.quotes extension with callouts support ([#​938](https://github.com/zensical/zensical/issues/938))
##### Bug fixes
- [`65a019d`](65a019d) **ui** – update ui to v0.0.30
- [`5c0bd36`](5c0bd36) **compat** – ignore config file in watch setting ([#​934](https://github.com/zensical/zensical/issues/934))
- [`13fd89e`](13fd89e) **compat** – relax mike settings validation ([#​932](https://github.com/zensical/zensical/issues/932))
##### Refactorings
- [`9f36bb5`](9f36bb5) **compat** – relax all plugins validation
### [`v0.0.61`](https://github.com/zensical/zensical/releases/tag/v0.0.61): 0.0.61
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.60...v0.0.61)
#### Summary
This version adds more comprehensive support for [documentation redirects](https://zensical.org/docs/setup/redirects/) in `mkdocs.yml` and `zensical.toml`. Zensical supports page and [anchor redirects](https://zensical.org/docs/setup/redirects/#redirect-a-section), resolves redirect chains, rejects cycles, and preserves links [when pages are moved or split](https://zensical.org/docs/setup/redirects/#split-a-page).
##### Anchor redirects
Renaming a heading normally breaks bookmarks and external links to its old anchor. For example, after renaming `## Installation` to `## Getting started`, add:
```toml
[project.plugins.redirects.redirect_maps]
"guide.md#installation" = "guide.md#getting-started"
```
Existing links to `/guide/#installation` will then redirect to `/guide/#getting-started`. The same configuration can redirect anchors between pages or preserve individual sections when splitting a page.
##### Automatic redirects
[Zensical Studio](https://zensical.org/studio/) detects renamed headings and offers an **Add anchor redirect** CodeLens. It can complete, validate, navigate to, and repair redirect targets while compacting repeated changes, updating redirect chains, and removing redundant self-redirects.
<img width="557" height="86" src="https://github.com/user-attachments/assets/802d8d99-a205-44af-a29f-6a26eaaa5780" />
#### Changelog
##### Features
- [`215d7fa`](215d7fa) **zensical**, **compat** – resolve redirect chains and reject cycles
- [`a6fdc5f`](a6fdc5f) **zensical**, **compat** – resolve anchor overrides in page redirects
- [`0b1a378`](0b1a378) **zensical**, **compat** – support anchor redirects
##### Bug fixes
- [`6910d56`](6910d56) **compat** – relax validation of autorefs settings
- [`eac9e24`](eac9e24) **ui** – update ui to v0.0.29
- [`78a34cd`](78a34cd) **zensical-serve** – avoid port conflicts in server doctests
- [`304e280`](304e280) **compat** – relax search validation ([#​926](https://github.com/zensical/zensical/issues/926))
##### Refactorings
- [`6220f43`](6220f43) **zensical** – clarify redirect planning and output
### [`v0.0.60`](https://github.com/zensical/zensical/releases/tag/v0.0.60): 0.0.60
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.59...v0.0.60)
#### Summary
This version updates the user interface to 0.0.28, fixing navigation pruning and alternate-link handling while adding 51 new icons. It also adds direct support for the `table-reader` plugin and fixes template inclusion with macros on Windows extended-length paths.
#### Changelog
##### Features
- [`3b929cc`](3b929cc) **compat** – support table-reader plugin directly (not through macros)
##### Bug fixes
- [`82ece74`](82ece74) **ui** – update ui to v0.0.28
- [`206b6b3`](206b6b3) **compat** – handle Windows extended-length paths when including templates with macros ([#​914](https://github.com/zensical/zensical/issues/914))
### [`v0.0.59`](https://github.com/zensical/zensical/releases/tag/v0.0.59): 0.0.59
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.58...v0.0.59)
#### Summary
This version fixes navigation title precedence, Windows `custom_dir` paths, `material/meta` activation, and inline SVG icons processed by the `minify` plugin.
#### Changelog
##### Bug fixes
- [`005f01f`](005f01f) **zensical** – `minify` plugin breaks icons `circle` and `rect` elements
- [`05f297e`](05f297e) **zensical**, **compat** – respect navigation title precedence ([#​906](https://github.com/zensical/zensical/issues/906))
- [`96d43cd`](96d43cd) **compat** – `custom_dir` path interpreted incorrectly on Windows ([#​902](https://github.com/zensical/zensical/issues/902))
- [`9f1042a`](9f1042a) **zensical**, **compat** – `meta` plugin only enabled when using `material/meta` ([#​898](https://github.com/zensical/zensical/issues/898))
##### Refactorings
- [`6398ebd`](6398ebd) **zensical**, **compat** – separate navigation title resolution
### [`v0.0.58`](https://github.com/zensical/zensical/releases/tag/v0.0.58): 0.0.58
[Compare Source](https://github.com/zensical/zensical/compare/v0.0.57...v0.0.58)
#### Summary
This version marks a major evolution of Zensical's build architecture and completes the most essential MkDocs plugin replacements.
Six new plugin replacements are now included:
- `meta`
- `redirects`
- `minify`
- `tags`
- `literate-nav`
- `awesome-nav`
The existing `search`, `mkdocstrings`, and `autorefs` replacements have also been migrated to the new architecture. We kept their behavior close to the upstream plugins while moving almost all processing into Rust. Python is now primarily responsible for configuration normalization and the narrow Python-Markdown adapter used by `literate-nav`.
Under the hood, the build pipeline now runs on a substantially more efficient ZRX scheduler and stream architecture. Together with more compact intermediate data, shared page state, and fewer allocations, this **reduces peak memory usage by roughly 30–40%** on large projects. Builds are also modestly faster.
Most remaining build time is now spent rendering Markdown through Python-Markdown. One of our next major performance steps is replacing that stage with our Rust-based, Python-Markdown-compatible parser, as announced in the [June edition](https://mail.zensical.org/monthly/2026/06/) of Zensical Monthly.
Over the coming weeks, we'll focus on adding more plugin replacements so that increasingly complex existing projects can switch to Zensical without missing out on functionality. We'll also continue evolving the module API and make it available to interested early users before releasing it publicly.
#### Changelog
##### Breaking changes
- [`34043fe`](34043fe) – remove x86 and armv7 musl builds
##### Features
- [`af7ae6f`](af7ae6f) **zensical** – support secure WebSockets for preview ([#​893](https://github.com/zensical/zensical/issues/893))
- [`1e1fc79`](1e1fc79) **zensical**, **compat** – add `awesome-nav` MkDocs plugin replacement
- [`c3dbdfe`](c3dbdfe) **zensical**, **compat** – add `literate-nav` MkDocs plugin replacement
- [`32bd870`](32bd870) **zensical**, **zensical-serve**, **zensical-watch**, **compat** – add `tags` MkDocs plugin replacement
- [`cbdd6ce`](cbdd6ce) **zensical**, **compat** – add `minify` MkDocs plugin replacement
- [`afe1ecb`](afe1ecb) **zensical**, **compat** – add `redirects` MkDocs plugin replacement
- [`8dc4a80`](8dc4a80) **zensical**, **compat** – add `meta` MkDocs plugin replacement
##### Bug fixes
- [`1ec42b9`](1ec42b9) **ui** – update ui to v0.0.27
- [`965351d`](965351d) **compat** – run link rewriting post-processor before raw HTML post-processor
- [`7fe9245`](7fe9245) **zensical** – propagate unresolved operator failures
- [`02d903d`](02d903d) **compat** – maintain Python-Markdown extensions ordering
##### Performance improvements
- [`f4830e0`](f4830e0) **compat** – iterate over raw HTML blocks only once per post-processor
- [`af0ca2e`](af0ca2e) **compat** – faster autorefs URL membership check
##### Refactorings
- [`3c779b9`](3c779b9) **zensical**, **compat** – finalize scheduler and plugin integration
- [`86646a4`](86646a4) **zensical**, **zensical-serve**, **compat** – reconcile MkDocs plugin infrastructure
- [`83b0fd7`](83b0fd7) **zensical**, **compat** – migrate `autorefs` MkDocs plugin replacement
- [`3a390c7`](3a390c7) **zensical**, **compat** – migrate `mkdocstrings` MkDocs plugin replacement
- [`ff11fe3`](ff11fe3) **zensical**, **compat** – migrate `search` MkDocs plugin replacement
- [`de7757b`](de7757b) **zensical**, **zensical-watch** – migrate workflows to ZRX scheduler and streams
</details>
---
### Configuration
📅 **Schedule**: (UTC)
- Branch creation
- At any time (no schedule defined)
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yODguMCIsInVwZGF0ZWRJblZlciI6IjQzLjI4OC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->
Co-authored-by: Renovate Bot <bot@renovateapp.com>
Reviewed-on: #95
kind is a tool for running local Kubernetes clusters using Docker container “nodes”. kind was primarily designed for testing Kubernetes itself, but may be used for local development or CI.
We tend to test first on k3s first, then the other distros. k3d support coming soon.
Default Installed Applications
All of these can be disabled with the exception of Argo CD, which is optional, but if Argo CD is not installed, smol-k8s-lab will only install: MetalLB, prometheus CRDs, Traefik, and cert-manager.
Traefik is both an Ingress and Gateway API controller and we're currently switching to supporting it in addition to cilium since ingress-nginx is deprecated.
Somewhat stable and being actively supported, so if you'd like to contribute or just found a 🐛, feel free to open an issue (and/or pull request) over at codeberg.org, and we'll try to take a look ASAP!