Theme Studio

Design a Power Platform palette, preview it live, and export copy-paste-ready Power Fx, JSON or YAML.

Presets

Palette Roles

Lock the roles you want to keep, then Generate to roll the rest.

Brand Primary

Brand Secondary

Accent

Success

Warning

Error

Info

Surface

On Surface

Background Muted

Text Primary

Text Secondary

Text Tertiary

Border Default

Border Subtle

Validation

2 contrast issues to review.

  • Text Primary on Surface14.68:1 · AAA
  • Text Secondary on Surface4.83:1 · AA
  • Text Tertiary on Surface2.54:1 · Fail
  • On-Surface on Surface18.93:1 · AAA
  • Button text (white) on Brand Primary5.17:1 · AA
  • Brand Primary on Surface5.17:1 · AA
  • Success on Surface2.54:1 · Fail
  • Error on Surface3.76:1 · AA Large

Live Preview

Every surface uses your palette roles.

Total Revenue
$32,122
▲ +8.1%
Monthly Sales
$12,212
▲ +8.1%
Net Profit
$21,212
▲ +8.1%
Revenue by month

Theme Output

Copy-paste ready.

// OrbitKit Theme Studio — paste into App.OnStart
Set(
  AppTheme,
  {
    // Core Brand Identity (60/30/10)
    BrandPrimary: ColorValue("#2563eb"),
    BrandSecondary: ColorValue("#7c3aed"),
    BrandAccent: ColorValue("#db2777"),

    // Semantic / Status
    StatusSuccess: ColorValue("#10b981"),
    StatusWarning: ColorValue("#f59e0b"),
    StatusError: ColorValue("#ef4444"),
    StatusInfo: ColorValue("#3b82f6"),

    // Foundation
    Surface: ColorValue("#ffffff"),
    OnSurface: ColorValue("#0b1020"),
    BackgroundMuted: ColorValue("#f8fafc"),

    // Text & Content Hierarchy
    TextPrimary: ColorValue("#1f2937"),
    TextSecondary: ColorValue("#6b7280"),
    TextTertiary: ColorValue("#9ca3af"),

    // UI Elements
    BorderDefault: ColorValue("#e5e7eb"),
    BorderSubtle: ColorValue("#f3f4f6")
  }
);

Paste into App.OnStart, then use AppTheme.BrandPrimary, AppTheme.TextPrimary, AppTheme.StatusSuccess in any control.

How to use

  1. Pick a preset or describe a theme and hit Generate. Lock roles you like and re-roll the rest.
  2. Switch the Power Fx tab and click Copy.
  3. In Power Apps Studio, open App → OnStart and paste. Run OnStart once.
  4. Reference colors anywhere, e.g. a button's Fill = AppTheme.BrandPrimary and Color = RGBA(255,255,255,1).
  5. Keep the Validation panel green for accessible (WCAG AA) text contrast.