Benchmarks¶
Page-weight receipts for the themes Void competes with. The same four
Markdown pages (home, a nested guide with a code block, and a reference
table) are built with void, material, and readthedocs; the table
below is the byte count shipped by each build. Smaller is faster —
and this page is regenerated by CI on every push to main.
| Theme | index.html | CSS | JS | Total shipped (raw) | Over the wire (gzip) | Files |
|---|---|---|---|---|---|---|
| void | 24.9 kB | 150.9 kB | 329.9 kB | 830.5 kB | 173.3 kB | 25 |
| material | 12.3 kB | 148.9 kB | 1035.6 kB | 2525.8 kB | 596.5 kB | 51 |
| readthedocs | 4.8 kB | 136.9 kB | 199.4 kB | 3580.4 kB | 2739.3 kB | 36 |
Measured with MkDocs 1.6.1 at commit f5516ac.
Methodology¶
- Each project uses the same minimal content and a
searchplugin; only the theme differs (voidadditionally registers thevoidplugin, the same way a real Void site does). - “Total shipped (raw)” sums every file emitted under
site/(HTML, CSS, JS, fonts, and static assets). “Over the wire (gzip)” is the same set compressed with gzip to approximate transfer size. - Themes that cannot be built on a machine (for example
materialwhenmkdocs-materialis not installed) are shown as “—”; the CI workflow installs all three, so the table is always complete upstream. - No network requests happen during measurement — CDN-only assets are counted by what the theme itself ships to the browser.
Lighthouse¶
Lighthouse runner is enforced in CI, not measured here:
.github/workflows/performance.yml
asserts a minimum score of 95 in every category (performance,
accessibility, best-practices, SEO) against the live docs site. A run
that scores below the bar fails the build. Latest runs:
Actions → Performance.
Regenerating¶
The Benchmarks CI workflow runs the same command on every push to
main and opens a pull request when the numbers change. To regenerate
manually, add mkdocs-material to the environment (pip install
mkdocs-material) so the material column is populated.