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