Theming
Colour tokens, light/dark, custom partials.
The theme ships as a folder of CSS, JS, and HTML partials under
themes/vernedocs/. Everything is tunable without touching Verne itself.
Colour tokens
Open themes/vernedocs/assets/css/style.css. The first block is a
:root { ... } declaration that lists every visual token used by the
theme — surface colours, type stack, density, layout widths. Light and
dark schemes are two sibling blocks that re-declare those tokens.
Override any of them in a sibling stylesheet (loaded after the theme), or fork the file directly. Both work — Verne does no token-merge magic.
Light / dark
The theme respects prefers-color-scheme by default and remembers a
manual override under the verne:theme localStorage key (namespaced
so multiple Verne themes can share state). The toggle in the page header
writes either light or dark; clearing localStorage resets to “system”.
Adding a partial
Templates live under themes/vernedocs/templates/. To add a banner above
the main content area:
<!-- themes/vernedocs/templates/partials/banner.html -->
<aside class="banner not-content">
<strong>Heads up:</strong> this site is in beta.
</aside>Then {% include "partials/banner.html" %} from _default/single.html (or
any layout that should show it).
Custom layouts per section
Verne resolves templates in this order for a page in section guides/:
templates/guides/single.htmltemplates/_default/single.html
Drop a section-specific layout when you need one section to look different (landing pages, changelogs, an FAQ) without forking the default.
Static assets
Anything inside themes/vernedocs/static/ is copied verbatim to the build
output. Put images, fonts, downloadable assets there — they’re served
under their relative path (e.g. static/images/diagram.svg →
/images/diagram.svg).