Area: AI and Intelligent Automation


Problem: Open WebUI ships with grey-scale theming that only goes so far. An organisation putting a branded chat interface in front of its staff needs control of individual components, not just a colour swap.

Approach: We built a theme engine that compiles JSON definitions into CSS. Each component (sidebar, terminal, chat, navigation) can be styled on its own, and a theme declares its own palette, gradients, glows, and animations.

Technical details:

  • JSON theme definitions compiled into targeted CSS
  • Per-component styling: sidebar, terminal, chat messages, navigation
  • Palettes declared as CSS custom properties
  • Gradients, glow effects, and animations
  • Preset themes included (cyberpunk, persona)
  • Extensible property set for new theme features
  • No modification to Open WebUI core

Outcome: A branded interface is one JSON file away, and switching themes does not touch Open WebUI itself. The engine carries any number of themes.

Stack: CSS, JavaScript, JSON, Open WebUI

Sandboxed plugin ran for projects/owui-theme-engine and read “Open WebUI Theme Engine” through the mediated API.