# Strike Freedom — Hermes dashboard theme demo # # Copy this file to ~/.hermes/dashboard-themes/strike-freedom.yaml and # restart the web UI (or hit `/api/dashboard/plugins/rescan`). Pair with # the `strike-freedom-cockpit` plugin (plugins/strike-freedom-cockpit/) # for the full cockpit experience — this theme paints the palette, # chrome, and layout; the plugin supplies the MS-STATUS sidebar + header # crest that the cockpit layout variant reserves space for. # # Demonstrates every theme extension point added alongside the plugin # slot system: palette, typography, layoutVariant, assets, customCSS, # componentStyles, colorOverrides. name: strike-freedom label: "Strike Freedom" description: "Cockpit HUD — deep navy + cyan + gold accents" # ------- palette (3-layer) ------- palette: background: "#05091a" midground: "#d8f0ff" foreground: hex: "#ffffff" alpha: 0 warmGlow: "rgba(255, 199, 55, 0.24)" noiseOpacity: 0.7 # ------- typography ------- typography: fontSans: '"Orbitron", "Eurostile", "Bank Gothic", "Impact", sans-serif' fontMono: '"Share Tech Mono", "JetBrains Mono", ui-monospace, monospace' fontDisplay: '"Orbitron", "Eurostile", "Impact", sans-serif' fontUrl: "https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700;800&family=Share+Tech+Mono&display=swap" baseSize: "14px" lineHeight: "1.5" letterSpacing: "0.04em" # ------- layout ------- layout: radius: "0" density: "compact" # ``cockpit`` reserves a 260px left rail that the shell renders when the # user is on this theme. A paired plugin populates the rail via the # ``sidebar`` slot; with no plugin the rail shows a placeholder. layoutVariant: cockpit # ------- assets ------- # Use any URL (https, data:, /dashboard-plugins/...) or a pre-wrapped # ``url(...)``/``linear-gradient(...)`` expression. The shell exposes # each as a CSS var so plugins can read the same imagery. assets: bg: "linear-gradient(140deg, #05091a 0%, #0a1530 55%, #102048 100%)" # Plugin reads --theme-asset-hero / --theme-asset-crest to populate # its sidebar hero render + header crest. Replace these URLs with your # own artwork (copy files into ~/.hermes/dashboard-themes/assets/ and # reference them as /dashboard-themes-assets/strike-freedom/hero.png # once that static route is wired up — for now use inline data URLs or # remote URLs). hero: "" crest: "" # ------- component chrome ------- # Each bucket's props become CSS vars (--component--) that # built-in shell components (Card, header, sidebar, backdrop) consume. componentStyles: card: # Notched corners on the top-left + bottom-right — classic mecha UI. clipPath: "polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px)" background: "linear-gradient(180deg, rgba(10, 22, 52, 0.85) 0%, rgba(5, 9, 26, 0.92) 100%)" boxShadow: "inset 0 0 0 1px rgba(64, 200, 255, 0.28), 0 0 18px -6px rgba(64, 200, 255, 0.4)" header: background: "linear-gradient(180deg, rgba(16, 32, 72, 0.95) 0%, rgba(5, 9, 26, 0.9) 100%)" sidebar: background: "linear-gradient(180deg, rgba(8, 18, 42, 0.88) 0%, rgba(5, 9, 26, 0.85) 100%)" tab: clipPath: "polygon(6px 0, 100% 0, calc(100% - 6px) 100%, 0 100%)" backdrop: backgroundSize: "cover" backgroundPosition: "center" fillerOpacity: "1" fillerBlendMode: "normal" # ------- color overrides ------- colorOverrides: primary: "#ffce3a" primaryForeground: "#05091a" accent: "#3fd3ff" accentForeground: "#05091a" ring: "#3fd3ff" success: "#4ade80" warning: "#ffce3a" destructive: "#ff3a5e" border: "rgba(64, 200, 255, 0.28)" # ------- customCSS ------- # Raw CSS injected as a scoped