- JavaScript 55.5%
- CSS 35.8%
- Blade 4.9%
- PHP 3%
- Shell 0.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| bin | ||
| layouts/parts | ||
| public | ||
| screenshots | ||
| .gitignore | ||
| functions.php | ||
| LICENSE | ||
| README.md | ||
Weraldiz BookStack Theme
A theme for BookStack: a murex purple, pitch and vellum palette, Cinzel headings over Libre Baskerville text, framed images, and content that fades in as you scroll. It began as the theme of the Weraldiz worldbuilding wiki; this is that theme without the site's landing page and other site-specific parts.
| Light | Dark |
|---|---|
![]() |
![]() |
![]() |
![]() |
BookStack v26.09.1 with the recommended colour settings below. Demo content and covers made for the screenshots.
Features
- A light (vellum) and a dark (pitch) mode from one set of colour tokens.
- Self-hosted fonts, so the wiki makes no requests to Google.
- Content fades in as it scrolls into view, headings reveal letter by letter, and scrolling is smooth.
- Framed images that open larger on click.
- Themed forms, editors and notifications in both modes.
- Optional click effects (sparks and a page ripple) and an optional "declutter" mode for public, read-mostly wikis.
- Respects reduced motion, works without JavaScript, and never leaves the page blank if a script fails.
Requirements
- BookStack v26.09 or later (built against v26.09.1)
- Access to BookStack's files, to add a folder to
themes/and edit.env
Installation
- Copy this repository to
themes/weraldiz/inside your BookStack installation (with the linuxserver.io Docker image:/config/www/themes/weraldiz/). - In BookStack's
.env, setAPP_THEME=weraldiz. - Reload BookStack.
- Optionally, set BookStack's own colours to match (Settings › Customization › Application Color Scheme), or links and icons stay BookStack blue:
Setting Light Dark Primary Color #ecdce5#120a11Default Link Color #1d131c#fefcfdShelf Color #4b2f48#e3d4e0Book Color #5f3a5c#c4adc2Chapter Color #83607f#a2869fPage Color #a2869f#83607fPage Draft Color #e3d4e0#5a4d59
To update, replace the folder's contents. In a container, make sure the files belong to the user the container runs as. bin/build.sh writes an optional minified copy to dist/ (needs Node.js).
Options
Two switches at the top of functions.php:
| Option | Default | What it does |
|---|---|---|
effects |
true |
Sparks and a page ripple on clicks on empty page areas (off for reduced motion, in Firefox, and the ripple on touch devices). |
declutter |
false |
Hides parts of BookStack's interface such as Recent Activity, Revisions and the page Details block, and more for guests. Edit public/css/declutter.css to keep anything. |
For page authors
Classes you can put on elements in a page's HTML:
| Class | Effect |
|---|---|
image-float-left, image-float-right, image-float-left-small, image-full-width |
Floated or full-width image with a gradient frame |
no-frame, transparent-bg, no-zoom |
Image without a frame, for transparent images, or without click-to-zoom |
fade-in, fade-in-left, fade-in-right (-delay), image-fade-in, container-slide-left, text-fade-up |
Scroll-in animations |
weraldiz-button |
Call-to-action link button (add <span class="button-glow"></span> for a glow) |
inlink |
Teal inline link |
Customization
Colours live in public/css/core.css (brand hues at the top of :root, dark mode in the html.dark-mode block), animation timings in public/js/wz-reveal.js, spark settings in public/js/wz-sparks.js.
Known limits
- The theme overrides four of BookStack's views, which BookStack doesn't treat as a stable interface, so check it after each BookStack update.
- The legacy TinyMCE editor and the markdown editor's preview pane are not themed.
- If you set
STYLE_SOURCESyourself, keepunsafe-inlinein it for the no-JavaScript fallback.
AI disclosure
This theme was created by AI with the help of human ideas.
License
The theme is MIT licensed. Bundled third-party files keep their own licences:
- Cinzel and Libre Baskerville: SIL Open Font License 1.1 (public/fonts/OFL-Cinzel.txt, public/fonts/OFL-LibreBaskerville.txt)
- GSAP, ScrollTrigger and SplitText: GreenSock's Standard License
- Lenis: MIT (public/js/lenis/LICENSE)
Not affiliated with BookStack.



