Skip to content

Academy Theme Engine (Global Tema)

Academy builder içindeki Global Tema (Theme Engine) ayarları; siteTheme CSS değişkenleri, semantic token entegrasyonu ve preview davranışı.

Builder’da Global Tema sekmesi, storefront için ortak bir “theme globals” katmanı sağlar. Bu ayarlar, blokların tek tek settings alanından bağımsız olarak, tüm sayfada tutarlı renk/tipografi/buton davranışı üretmek için CSS değişkenlerine çevrilir.


  • UI: /:lang/instructor/academy/builderapp/routes/instructor.academy.builder.tsx
  • Persist: draft/publish action’ında themeGlobals ile themeConfig.siteTheme alanına yazılır.

siteTheme “blokların üstünde” çalışan bir global ayar setidir.

  • sitePrimary: ana aksiyon rengi (--primary)
  • siteSecondary: ikincil vurgu rengi (--secondary)
  • siteText: temel metin rengi (--text-color)
  • siteAccent: sayfa arka planı/zemin rengi (--background)
  • siteHeadingFont: başlık fontu (--font-heading)
  • siteBodyFont: gövde fontu (--font-body)
  • siteBaseFontSize: temel font boyutu (--font-size)
  • buttonRadius: --radius
  • buttonPaddingX / buttonPaddingY: --btn-px, --btn-py
  • buttonShadow / buttonShadowHover: --btn-shadow, --btn-shadow-hover

CSS değişkenleri → semantic token’lar

Section titled “CSS değişkenleri → semantic token’lar”

Storefront/preview katmanında Theme Engine, hem “raw” değişkenleri hem de Polaris-flat semantic token’ları besleyecek şekilde uygulanır. Amaç:

  • bg-surface*, text-on-surface*, border-outline* gibi class’ların global tema ile uyumlu görünmesi
  • Blokların var(--primary) gibi değişkenleri kullanarak tek noktadan tema alması

Bu sayede örneğin bir blok kendi primaryColor alanını boş bıraksa bile global --primary üzerinden doğru rengi alır.


Builder preview, gerçek tenant sayfası gibi davranacak şekilde “iframe benzeri” bir katmanda theme globals uygular:

  • Global tema değişince preview anında güncellenir
  • Bloklar siteTheme üzerinden gelen CSS değişkenlerini okur