Antora UI Bundle Quick Reference
This is a condensed reference for the centralized UI bundle architecture. For full details, see Antora UI Architecture.
Common Tasks
Update Theme Colors or Styles
cd ~/atelier/_bibliotheca/domus-antora-ui
Edit the theme file:
vim src/css/domus-theme.css
Build and test locally:
npm run build
Commit and push:
git add -A && git commit -m "fix(theme): Description of change"
git push
Trigger docs rebuild (after UI build completes):
cd ~/atelier/_bibliotheca/domus-docs
git commit --allow-empty -m "chore: Rebuild with UI update"
git push
Update Navbar Menus
Edit the header partial:
vim src/partials/header-content.hbs
The navbar structure uses Handlebars:
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link">Menu Name</a>
<div class="navbar-dropdown">
<a class="navbar-item" href="{{or siteRootPath '/'}}/component/version/page.html">Link Text</a>
</div>
</div>
Key Files
| File | Purpose |
|---|---|
|
All custom theme styles (~900 lines) |
|
Theme toggle, focus mode, code enhancements |
|
Custom navbar with dropdown menus |
|
Early theme detection (prevents FOUC) |
|
Script loading order |
Theme CSS Structure
/* Base styles - apply to all themes */
body { background: var(--bg-primary) !important; }
/* Theme-specific overrides */
[data-theme="dark"] { /* dark theme vars */ }
[data-theme="catppuccin"] { /* mocha theme vars */ }
[data-theme="light"] { /* light theme vars */ }
CSS Variables
| Variable | Dark | Catppuccin | Light |
|---|---|---|---|
|
#1a1a1a |
#1e1e2e |
#ffffff |
|
#252525 |
#313244 |
#f5f5f5 |
|
#e0e0e0 |
#cdd6f4 |
#1a1a1a |
|
#0077B6 |
#89b4fa |
#0077B6 |
Troubleshooting
Page is white / Theme not applying
-
Check if
data-themeattribute is on<html>:document.documentElement.getAttribute('data-theme') // Should return: "dark", "catppuccin", or "light" -
Hard refresh:
Ctrl+Shift+R -
Clear theme cookie in DevTools → Application → Cookies → delete
antora-theme
Build Dependencies
1. Push to domus-antora-ui
2. Wait for Cloudflare Pages build (~1-2 min)
3. Push to domus-docs (or any trigger)
4. Wait for Cloudflare Pages build (~2-3 min)
5. Hard refresh browser
Environment Variables (Cloudflare Pages)
Set in domus-docs → Settings → Environment Variables:
| Variable | Purpose |
|---|---|
|
Service token ID (from Zero Trust) |
|
Service token secret |
|
GitHub PAT for private repos |