SSR # 
Vuestic is fully compatible with server-side rendering.
CSS variables # 
Vuestic is fully compatible with server-side rendering.
app.config.globalProperties.$vaColorConfig.renderCSSVariables();Examples # 
Here are two examples how you can add CSS variables to html head
Vite SSR Plugin # 
Learn more about Vite SSR Plugin
import { createVuestic } from "vuestic-ui";
import "vuestic-ui/css";
export async function render(pageContext) {
  // ...
  app.use(createVuestic());
  const appHtml = await renderToString(app);
  const cssVariables =
    app.config.globalProperties.$vaColorConfig.renderCSSVariables();
  return escapeInject`<!DOCTYPE html>
    <html>
      <head>
        <title>Vuestic App</title>
        <style>${cssVariables}</style>
      </head>
      <body>
        <div id="app">${dangerouslySkipEscape(appHtml)}</div>
      </body>
    </html>`;
}Vitesse # 
import { ViteSSG } from 'vite-ssg'
import { setupLayouts } from 'virtual:generated-layouts'
import App from './App.vue'
import type { UserModule } from './types'
import generatedRoutes from '~pages'
import { createVuestic } from 'vuestic-ui'
import { ref } from 'vue'
import 'vuestic-ui/css'
const routes = setupLayouts(generatedRoutes)
export const createApp = ViteSSG(
  App,
  { routes, base: globalThis._importMeta_.env.BASE_URL },
  (ctx) => {
    Object.values(globalThis._importMeta_.glob<{ install: UserModule }>('./modules/*.ts', { eager: true }))
    .forEach(i => i.install?.(ctx))
    ctx.app.use(createVuestic())
    const head = app.config.globalProperties.$head
    const colorConfig = app.config.globalProperties.$vaColorConfig
    head.addHeadObjs(ref({
      htmlAttrs: {
        style: colorConfig.renderCSSVariables(),
      },
    }))
  },
)