What problem does it solve?
Building a custom visual theme for Gum Forms controls requires deep knowledge of the V3 default visual hierarchy, state callback wiring, font embedding, and cross-runtime NuGet packaging — mistakes like misordered clip containers, swallowed click events, or missing font glyphs only surface at runtime. This Skill encodes the conventions, pitfalls, and step-by-step recipe for authoring a complete theme package.
Core Features & Use Cases
- Template-based theme authoring: Clone the Gum.Themes.Template project, rename the six theme-owned types, transcribe CSS design tokens into a Colors class, and restyle each control's visual subclass.
- Rendering guidance: Covers NineSlice vs Apos.Shapes primitives, native drop shadows, dashed strokes, rounded-outline clipping tricks, and icon font bundling with DejaVu Sans Mono.
- Cross-runtime packaging: Explains the MonoGame/KNI/raylib multi-project source-sharing pattern, embedded font resource naming, and KernSmith dependency configuration.
- Use Case: A developer receives a CSS/HTML mockup for their game's UI and needs to turn it into a shippable Gum.Themes.* NuGet package that restyles every Forms control with one Apply() call.
Quick Start
Use the gum-theming skill to create a new Gum theme from the template project that matches my CSS design mockup.